Sha256: 7610474817b67f827ddf5add54e17c8e39d1273e54ee0c08b348781ec623a180

Contents?: true

Size: 1.01 KB

Versions: 36

Compression:

Stored size: 1.01 KB

Contents

module Ufo::Cfn::Stack::Builder::Resources::Scaling
  class Role < Base
    def build
      return unless autoscaling_enabled?

      text =<<~EOL
        Type: AWS::IAM::Role
        Properties:
          AssumeRolePolicyDocument:
            Statement:
              - Effect: Allow
                Principal:
                  Service: [application-autoscaling.amazonaws.com]
                Action: ["sts:AssumeRole"]
          Policies:
            - PolicyName: !Sub "${AWS::StackName}-auto-scaling-policy"
              PolicyDocument:
                Version: "2012-10-17"
                Statement:
                  - Effect: Allow
                    Action:
                      - ecs:DescribeServices
                      - ecs:UpdateService
                      - cloudwatch:PutMetricAlarm
                      - cloudwatch:DescribeAlarms
                      - cloudwatch:DeleteAlarms
                    Resource:
                      - "*"
      EOL
      Ufo::Yaml.load(text).deep_symbolize_keys
    end
  end
end

Version data entries

36 entries across 36 versions & 1 rubygems

Version Path
ufo-6.3.13 lib/ufo/cfn/stack/builder/resources/scaling/role.rb
ufo-6.3.12 lib/ufo/cfn/stack/builder/resources/scaling/role.rb
ufo-6.3.11 lib/ufo/cfn/stack/builder/resources/scaling/role.rb
ufo-6.3.10 lib/ufo/cfn/stack/builder/resources/scaling/role.rb
ufo-6.3.9 lib/ufo/cfn/stack/builder/resources/scaling/role.rb
ufo-6.3.8 lib/ufo/cfn/stack/builder/resources/scaling/role.rb
ufo-6.3.7 lib/ufo/cfn/stack/builder/resources/scaling/role.rb
ufo-6.3.6 lib/ufo/cfn/stack/builder/resources/scaling/role.rb
ufo-6.3.5 lib/ufo/cfn/stack/builder/resources/scaling/role.rb
ufo-6.3.4 lib/ufo/cfn/stack/builder/resources/scaling/role.rb
ufo-6.3.3 lib/ufo/cfn/stack/builder/resources/scaling/role.rb
ufo-6.3.2 lib/ufo/cfn/stack/builder/resources/scaling/role.rb
ufo-6.3.1 lib/ufo/cfn/stack/builder/resources/scaling/role.rb
ufo-6.3.0 lib/ufo/cfn/stack/builder/resources/scaling/role.rb
ufo-6.2.5 lib/ufo/cfn/stack/builder/resources/scaling/role.rb
ufo-6.2.4 lib/ufo/cfn/stack/builder/resources/scaling/role.rb
ufo-6.2.3 lib/ufo/cfn/stack/builder/resources/scaling/role.rb
ufo-6.2.2 lib/ufo/cfn/stack/builder/resources/scaling/role.rb
ufo-6.2.1 lib/ufo/cfn/stack/builder/resources/scaling/role.rb
ufo-6.2.0 lib/ufo/cfn/stack/builder/resources/scaling/role.rb