Sha256: f82ba5cdc4b8283e9a38924472d6c164979d52e56a741970b1400c841f92df94

Contents?: true

Size: 1.43 KB

Versions: 26

Compression:

Stored size: 1.43 KB

Contents

module CORL
module Action
class Keypair < Plugin::CloudAction
  
  include Mixin::Action::Keypair
 
  #----------------------------------------------------------------------------
  # Settings
  
  def configure
    super do
      codes :key_failure
      
      register :json, :bool, true
      keypair_config
    end
  end
  
  #---
  
  def ignore
    node_ignore
  end
  
  #-----------------------------------------------------------------------------
  # Operations
 
  def execute
    super do |node, network|
      if keys = keypair
        ui.info("\n", { :prefix => false })
        ui_group(Util::Console.cyan("#{keys.type.upcase} SSH keypair")) do |ui|
          ui.info("-----------------------------------------------------")
        
          if settings[:json]
            private_key = Util::Console.blue(Util::Data.to_json(keys.encrypted_key, true))
            ssh_key     = keys.ssh_key.gsub(/^ssh\-[a-z]+\s+/, '')           
            ssh_key     = Util::Console.green(Util::Data.to_json(ssh_key, true))
          else
            private_key = Util::Console.blue(keys.encrypted_key)
            ssh_key     = Util::Console.green(keys.ssh_key)       
          end
          
          ui.info("SSH private key:\n#{private_key}")
          ui.info("SSH public key:\n#{ssh_key}")
          ui.info("\n", { :prefix => false }) 
        end          
      else
        myself.status = code.key_failure  
      end
    end
  end
end
end
end

Version data entries

26 entries across 26 versions & 1 rubygems

Version Path
corl-0.4.29 lib/CORL/action/keypair.rb
corl-0.4.28 lib/CORL/action/keypair.rb
corl-0.4.27 lib/CORL/action/keypair.rb
corl-0.4.26 lib/CORL/action/keypair.rb
corl-0.4.25 lib/CORL/action/keypair.rb
corl-0.4.24 lib/CORL/action/keypair.rb
corl-0.4.23 lib/CORL/action/keypair.rb
corl-0.4.22 lib/CORL/action/keypair.rb
corl-0.4.21 lib/CORL/action/keypair.rb
corl-0.4.20 lib/CORL/action/keypair.rb
corl-0.4.19 lib/CORL/action/keypair.rb
corl-0.4.18 lib/CORL/action/keypair.rb
corl-0.4.17 lib/CORL/action/keypair.rb
corl-0.4.16 lib/CORL/action/keypair.rb
corl-0.4.15 lib/CORL/action/keypair.rb
corl-0.4.14 lib/CORL/action/keypair.rb
corl-0.4.13 lib/CORL/action/keypair.rb
corl-0.4.12 lib/CORL/action/keypair.rb
corl-0.4.11 lib/CORL/action/keypair.rb
corl-0.4.10 lib/CORL/action/keypair.rb