Class: Rubber::Commands::Obfuscation

Inherits:
Clamp::Command
  • Object
show all
Defined in:
lib/rubber/commands/util.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.subcommand_descriptionObject



320
321
322
# File 'lib/rubber/commands/util.rb', line 320

def self.subcommand_description
  "Obfuscates rubber-secret.yml using encryption"
end

.subcommand_nameObject



316
317
318
# File 'lib/rubber/commands/util.rb', line 316

def self.subcommand_name
  "util:obfuscation"
end

Instance Method Details

#executeObject



340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
# File 'lib/rubber/commands/util.rb', line 340

def execute
  require 'rubber/encryption'

  if generate?
    puts "Obfuscation key: " + Rubber::Encryption.generate_encrypt_key.inspect
    exit
  else
    signal_usage_error "Need to define a rubber_secret in rubber.yml" unless secretfile
    signal_usage_error "Need to define a rubber_secret_key in rubber.yml" unless secretkey
    signal_usage_error "The file pointed to by rubber_secret needs to exist" unless File.exist?(secretfile)
    data = IO.read(secretfile)
    
    if decrypt?
      puts Rubber::Encryption.decrypt(data, secretkey)
    else
      puts Rubber::Encryption.encrypt(data, secretkey)
    end
  end
end