class Awsam::Key

Constants

KEYFILE

Attributes

name[R]

Public Class Methods

import(acctdir, key_name, key_file) click to toggle source
# File lib/awsam/key.rb, line 22
def self.import(acctdir, key_name, key_file)
  dir = File.join(Key::keys_dir(acctdir), key_name)
  FileUtils.mkdir(dir) unless File.exist?(dir)

  File.open(File.join(dir, KEYFILE), "w", 0400) do |f|
    f << File.read(key_file)
  end

  Key.new(dir)
end
keys_dir(base) click to toggle source
# File lib/awsam/key.rb, line 33
def self.keys_dir(base)
  dir = File.join(base, "keys")
  FileUtils.mkdir(dir) unless File.exist?(dir)
  dir
end
new(keydir) click to toggle source
# File lib/awsam/key.rb, line 9
def initialize(keydir)
  @name = File.basename(keydir)
  @dir = keydir
  if @name == Awsam::DEFAULT_LINK_NAME
    # This is required for the default link
    raise "Can not name a key: #{Awsam::DEFAULT_LINK_NAME}"
  end
end

Public Instance Methods

path() click to toggle source
# File lib/awsam/key.rb, line 18
def path
  File.join(@dir, KEYFILE)
end
print_environ() click to toggle source
remove() click to toggle source
# File lib/awsam/key.rb, line 48
def remove
  FileUtils.rm(self.path)
  FileUtils.rmdir(@dir)
end