Class: AWS::CloudFormation::StackSummaryCollection

Inherits:
Object
  • Object
show all
Includes:
AWS::Core::Collection::Simple
Defined in:
lib/aws/cloud_formation/stack_summary_collection.rb

Overview

Stack Summaries

Stack summaries contain information about CloudFormation stacks. You can filter the stacks you want summary information for by one or more statuses. You can even get information about deleted stacks for up to 90 days.

Enumerating Stack Summaries

You can enumerate all available summaries using enumerable methods. Yielded summaries are simple hashes.

cfm = AWS::CloudFormation.new
cfm.stack_summaries.each do |summary|
  puts summary.to_yaml
end

Filtering Stack Summaries

You can optionally provide one or more stack stasus values to filter the results by. Only stacks with the given status(es) will be enumerated.

cfm.stack_summaries.with_status(:create_failed).each do |summary|
  # ...
end

# enumerate stacks with various delete statuses
statuses = %w(delete_in_progress delete_failed delete_complete)
cf.stack_summaries.with_status(statuses).each do |summary|
  # ...
end

Instance Attribute Summary

Attributes included from AWS::Core::Model

#config

Instance Method Summary collapse

Methods included from AWS::Core::Collection::Simple

#each_batch

Methods included from AWS::Core::Collection

#each, #each_batch, #enum, #first, #in_groups_of, #page

Methods included from AWS::Core::Model

#client, #config_prefix, #inspect

Constructor Details

#initialize(options = {}) ⇒ StackSummaryCollection

Returns a new instance of StackSummaryCollection.


55
56
57
58
# File 'lib/aws/cloud_formation/stack_summary_collection.rb', line 55

def initialize options = {}
  @filters = options[:filters]
  super
end

Instance Method Details

#with_status(*status_filters) ⇒ StackSummaryCollection

Limits the stacks summaries that are enumerated.

cfm.stack_summaries.with_status(:create_complete).each do |summary|
  puts summary[:stack_name]
end

You can provide multiple statuses:

statuses = [:create_failed, :rollback_failed]
cfm.stack_summaries.with_status(statuses).each do |summary|
  puts summary[:stack_name]
end

Status names may be symbolized (snake-cased) or upper-cased strings (e.g. :create_in_progress, 'CREATE_IN_PROGRESS').

Parameters:

  • status_filters (Symbol, String)

    One or more statuses to filter stacks with. Valid values include:

    • :create_in_progress

    • :create_failed

    • :create_complete

    • :rollback_in_progress

    • :rollback_failed

    • :rollback_complete

    • :delete_in_progress

    • :delete_failed

    • :delete_complete

    • :update_in_progress

    • :update_complete_cleanup_in_progress

    • :update_complete

    • :update_rollback_in_progress

    • :update_rollback_failed

    • :update_rollback_complete_cleanup_in_progress

    • :update_rollback_complete

Returns:

  • (StackSummaryCollection)

    Returns a new stack summary collection that restricts what stack summariess will be enumerated.


99
100
101
102
103
# File 'lib/aws/cloud_formation/stack_summary_collection.rb', line 99

def with_status *status_filters
  StackSummaryCollection.new(
    :filters => status_filters.flatten.map(&:to_s).map(&:upcase),
    :config => config)
end