class Cloudit::Command::Validate
Constants
- DEFAULT_REGION
- DESCRIPTION
- VALID_METHODS
Private Class Methods
setup_options()
click to toggle source
# File lib/cloudit/command/validate.rb, line 34 def self.setup_options opts = Slop::Options.new opts.banner = 'Usage: cloudit validate' opts.separator '' opts.separator 'Validate options:' opts.string '-r', '--region', 'region used for validation', default: Cloudit::Config.region || DEFAULT_REGION opts.string '-d', '--directory', 'root directory to generate', default: DEFAULT_DIRECTORY opts.bool '-h', '--help', 'print usage', default: false self.slop_opts = opts self.parser = Slop::Parser.new(opts) end
Public Instance Methods
index()
click to toggle source
# File lib/cloudit/command/validate.rb, line 10 def index if @opts.help? $stdout.puts slop_opts else validate_template @opts[:region] end end
Private Instance Methods
validate_template(region=DEFAULT_REGION)
click to toggle source
# File lib/cloudit/command/validate.rb, line 20 def validate_template(region=DEFAULT_REGION) cf = Aws::CloudFormation::Client.new( region: region, access_key_id: Cloudit::Config.access_key_id, secret_access_key: Cloudit::Config.secret_access_key ) json = Cloudit::Command::Generate.new.generate_json @opts[:directory] resp = cf.validate_template(template_body: json) $stdout.puts "Template is valid" rescue Aws::CloudFormation::Errors::ValidationError => e $stdout.puts e.message end