class Ufo::Stack::Builder::Resources::TaskDefinition

Public Instance Methods

build() click to toggle source
# File lib/ufo/stack/builder/resources/task_definition.rb, line 3
def build
  return if @rollback_definition_arn

  {
    Type: "AWS::ECS::TaskDefinition",
    Properties: properties,
    DeletionPolicy: "Retain",
    UpdateReplacePolicy: "Retain",
  }
end
properties() click to toggle source
# File lib/ufo/stack/builder/resources/task_definition.rb, line 14
def properties
  props = Reconstructor.new(@task_definition).reconstruct

  # Decorate with iam roles if needed
  props[:TaskRoleArn] = {"Fn::GetAtt": "TaskRole.Arn"} if Roles::TaskRole.build?
  props[:ExecutionRoleArn] = {"Fn::GetAtt": "ExecutionRole.Arn"} if Roles::ExecutionRole.build?

  props
end