Sha256: 0c246230cde4e68e64d2e33124fe9bb3c027d7aefde572e82820892373e9cb87

Contents?: true

Size: 670 Bytes

Versions: 17

Compression:

Stored size: 670 Bytes

Contents

class Ufo::Stack
  module Helper
    include Ufo::AwsService
    include Ufo::Util
    extend Memoist

    def find_stack(stack_name)
      resp = cloudformation.describe_stacks(stack_name: stack_name)
      resp.stacks.first
    rescue Aws::CloudFormation::Errors::ValidationError => e
      # example: Stack with id demo-web does not exist
      if e.message =~ /Stack with/ && e.message =~ /does not exist/
        nil
      else
        raise
      end
    end

    def adjust_stack_name(cluster, service)
      [cluster, Ufo.pretty_service_name(service)].compact.join('-')
    end

    def status
      Status.new(@stack_name)
    end
    memoize :status
  end
end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
ufo-4.3.1 lib/ufo/stack/helper.rb
ufo-4.3.0 lib/ufo/stack/helper.rb
ufo-4.2.0 lib/ufo/stack/helper.rb
ufo-4.1.10 lib/ufo/stack/helper.rb
ufo-4.1.9 lib/ufo/stack/helper.rb
ufo-4.1.8 lib/ufo/stack/helper.rb
ufo-4.1.7 lib/ufo/stack/helper.rb
ufo-4.1.6 lib/ufo/stack/helper.rb
ufo-4.1.5 lib/ufo/stack/helper.rb
ufo-4.1.4 lib/ufo/stack/helper.rb
ufo-4.1.2 lib/ufo/stack/helper.rb
ufo-4.1.1 lib/ufo/stack/helper.rb
ufo-4.1.0 lib/ufo/stack/helper.rb
ufo-4.0.3 lib/ufo/stack/helper.rb
ufo-4.0.2 lib/ufo/stack/helper.rb
ufo-4.0.1 lib/ufo/stack/helper.rb
ufo-4.0.0 lib/ufo/stack/helper.rb