description: schemaVersion: '0.3' assumeRole: '{{ AutomationAssumeRole }}' parameters: LogDestination: type: String LoadBalancerArn: type: String AutomationAssumeRole: type: String mainSteps: - name: getAccount action: 'aws:executeAwsApi' inputs: Service: sts Api: get_caller_identity outputs: - Name: Id Selector: $.Account Type: String - name: getLoadBalancer action: 'aws:executeAwsApi' inputs: Service: elbv2 Api: describe_load_balancers LoadBalancerArns: - '{{ LoadBalancerArn }}' outputs: - Name: Name Selector: $.LoadBalancers[0].LoadBalancerName Type: String - name: enableLogging action: 'aws:executeAwsApi' inputs: Service: elbv2 Api: modify_load_balancer_attributes LoadBalancerArn: '{{ LoadBalancerArn }}' Attributes: - Key: access_logs.s3.enabled Value: 'true' - Key: access_logs.s3.bucket Value: '{{ LogDestination }}' - Key: access_logs.s3.prefix Value: '{{ getAccount.Id }}/elb-{{ getLoadBalancer.Name }}'