module Formatron::S3::ChefServerKeys
manage the Chef
Server user and organization keys
Constants
- ORGANIZATION_PEM_NAME
- USER_PEM_NAME
Public Class Methods
destroy( aws:, bucket:, name:, target:, guid: )
click to toggle source
rubocop:disable Metrics/MethodLength
# File lib/formatron/s3/chef_server_keys.rb, line 48 def self.destroy( aws:, bucket:, name:, target:, guid: ) user_pem_key = self.user_pem_key name: name, target: target, guid: guid Formatron::LOG.info do 'Delete Chef Server user key from ' \ "#{bucket}/#{user_pem_key}" end aws.delete_file( bucket: bucket, key: user_pem_key ) organization_pem_key = self.organization_pem_key( name: name, target: target, guid: guid ) Formatron::LOG.info do 'Delete Chef Server organization key ' \ "from #{bucket}/#{organization_pem_key}" end aws.delete_file( bucket: bucket, key: organization_pem_key ) end
get( aws:, bucket:, name:, target:, guid:, directory: )
click to toggle source
rubocop:disable Metrics/MethodLength rubocop:disable Metrics/ParameterLists
# File lib/formatron/s3/chef_server_keys.rb, line 13 def self.get( aws:, bucket:, name:, target:, guid:, directory: ) user_pem_key = self.user_pem_key name: name, target: target, guid: guid Formatron::LOG.info do 'Download Chef Server user key from ' \ "#{bucket}/#{user_pem_key}" end aws.download_file( bucket: bucket, key: user_pem_key, path: user_pem_path(directory: directory) ) organization_pem_key = self.organization_pem_key( name: name, target: target, guid: guid ) Formatron::LOG.info do 'Download Chef Server organization key ' \ "from #{bucket}/#{organization_pem_key}" end aws.download_file( bucket: bucket, key: organization_pem_key, path: organization_pem_path(directory: directory) ) end
organization_pem_key(name:, target:, guid:)
click to toggle source
# File lib/formatron/s3/chef_server_keys.rb, line 90 def self.organization_pem_key(name:, target:, guid:) Path.key( name: name, target: target, sub_key: "#{guid}/#{ORGANIZATION_PEM_NAME}" ) end
organization_pem_path(directory:)
click to toggle source
# File lib/formatron/s3/chef_server_keys.rb, line 98 def self.organization_pem_path(directory:) File.join directory, ORGANIZATION_PEM_NAME end
user_pem_key(name:, target:, guid:)
click to toggle source
rubocop:enable Metrics/MethodLength
# File lib/formatron/s3/chef_server_keys.rb, line 78 def self.user_pem_key(name:, target:, guid:) Path.key( name: name, target: target, sub_key: "#{guid}/#{USER_PEM_NAME}" ) end
user_pem_path(directory:)
click to toggle source
# File lib/formatron/s3/chef_server_keys.rb, line 86 def self.user_pem_path(directory:) File.join directory, USER_PEM_NAME end