class Avrolution::Rake::AddCompatibilityBreakTask
Public Class Methods
new(**)
click to toggle source
Calls superclass method
# File lib/avrolution/rake/add_compatibility_break_task.rb, line 9 def initialize(**) super @name ||= :add_compatibility_break @task_desc ||= 'Add an Avro schema compatibility break. Parameters: name, fingerprint, ' \ 'with_compatibility, after_compatibility' end
Private Instance Methods
perform()
click to toggle source
# File lib/avrolution/rake/add_compatibility_break_task.rb, line 18 def perform compatibility_break_args = ENV.to_h.slice( 'name', 'fingerprint', 'with_compatibility', 'after_compatibility' ).symbolize_keys missing_args = [:name, :fingerprint].select do |arg| compatibility_break_args[arg].blank? end if missing_args.any? puts missing_args.map { |arg| "#{arg} can't be blank" }.join(', ') puts 'Usage: rake avro:add_compatibility_break name=<name> fingerprint=<fingerprint> ' \ '[with_compatibility=<default:NONE>] [after_compatibility=<compatibility>]' exit(1) end Avrolution::CompatibilityBreaksFile.add(**compatibility_break_args) end