lib/kumogata/client.rb in kumogata-0.1.2 vs lib/kumogata/client.rb in kumogata-0.1.3

- old
+ new

@@ -55,15 +55,25 @@ def list(stack_name = nil) stacks = describe_stacks(stack_name) JSON.pretty_generate(stacks) end - def export(stack_name = nil) + def export(stack_name) template = export_template(stack_name) devaluate_template(template).chomp end + def show_outputs(stack_name) + outputs = describe_outputs(stack_name) + JSON.pretty_generate(outputs) + end + + def show_resources(stack_name) + resources = describe_resources(stack_name) + JSON.pretty_generate(resources) + end + private ########################################################### def open_template(path_or_url) open(path_or_url) do |f| if ruby_template?(path_or_url) @@ -236,9 +246,25 @@ def export_template(stack_name) stack = @cloud_formation.stacks[stack_name] stack.status JSON.parse(stack.template) + end + + def describe_outputs(stack_name) + AWS.memoize do + stack = @cloud_formation.stacks[stack_name] + stack.status + outputs_for(stack) + end + end + + def describe_resources(stack_name) + AWS.memoize do + stack = @cloud_formation.stacks[stack_name] + stack.status + resource_summaries_for(stack) + end end def while_in_progress(stack, complete_status) while stack.status =~ /_IN_PROGRESS\Z/ print '.'.intense_black unless @options.debug?