- unmigrated-wiki-markup
Documentation for Tasks for AWS 2.4 – other releases are available in the Tasks for AWS Documentation Directory.
View
or visit the current documentation home.
Bamboo Variable Substitution/Definition
All Tasks support Bamboo variables, both substituting them within parameters for AWS resource management and defining them from created AWS resources.
On this page:
Variable Substitution
Variables are substituted in all Task configuration text fields (e.g. Stack Name, Template URL, Instance ID, Volume ID etc.).
Please note the following feature:
- if the variable key contains the phrase "password", the value will be masked with "********" in the build logs; e.g. if the key is "password", "awsAccessKeyPassword" or "awsSecretKeyPassword" the build log will show the substituted value as "********"
Variable Definition
Variables are defined by all Tasks for reuse in subsequent Tasks as follows:
- variables have a dedicated prefix like
bamboo.custom.aws.*
, with*
being a task specific prefix, e.g.bamboo.custom.aws.cfn.stack
- variables refering to a collection of resources provide their ids in a semicolon separated list (i.e. the same format available on input), e.g.
${bamboo.custom.aws.ec2.image.resources}
with valuesami-985b21f1;ami-9a5b21f3
- you can refer to these variables from subsequent tasks via something like
${bamboo.custom.aws.cfn.stack.sampleStackOutputKey}
- these variables are also available as environment variables in the Script Task for example, albeit named slightly different, e.g.
$bamboo_custom_aws_cfn_stack_StringWithRegex
(Unix) or%bamboo_custom_aws_cfn_stack_StringWithRegex%
(Windows)
Please note the following constraints:
- variables are only reusable in subsequent tasks and not in other jobs/stages due to the implied concurrency, see the following discussion and workaround
Available Task Variables
The following variables are available in the various tasks:
AWS CloudFormation Stack
- the collection of affected stacks, e.g.
bamboo.custom.aws.cloudformation.stack.resources=SampleStack-42
relevant resource values for each affected stack, e.g.
custom.
aws.cloudformation.stack.resources.
=CREATE_COMPLETESampleStack-42
.StackStatus- properties converted to variables: StackName, StackStatus, CreationTime, LastUpdatedTime
- collection converted to variables: tags, parameters, resources, outputs
- the collection of provided stack parameters, e.g.
bamboo.custom.aws.
cloudformation
.stack.
.parameters=NumberWithRange;StringWithLength...resources.
SampleStack-42
- the value of each provided stack parameter , e.g.
bamboo.custom.aws.
cloudformation
.stack.
.resources.
SampleStack-42
parameters
.NumberWithRange
=2
- the value of each provided stack parameter , e.g.
- the collection of generated stack outputs, e.g.
bamboo.custom.aws.
cloudformation
.stack.
.outputs=sampleStackOutputKey;StringWithRegex;...resources.
SampleStack-42
- the value of each generated stack output, e.g.
bamboo.custom.aws.
cloudformation
.stack.
.StringWithRegex=Hello
.outputsresources.
SampleStack-42
- the value of each generated stack output, e.g.
- the collection of affected stack resources, e.g.
bamboo.custom.aws.cloudformation.stack.
.resources=i-3280997f;vol-e1debbcd;test-stack-SecurityGroup-KZWPADIUPCL6resources
.SampleStack-42relevant resource values for each affected stack resource, e.g.
custom.
aws.cloudformation.stack.resources.
=CREATE_COMPLETESampleStack-42
.resources.i-3280997f
.ResourceStatus- properties converted to variables: ResourceStatus, LogicalResourceId, PhysicalResourceId, Timestamp
- the status of each affected stack resource, e.g.
bamboo.custom.aws.
cloudformation
.stack.i-3280997f=CREATE_COMPLETE
Legacy Variable Naming
CloudFormation Variables had been named inconsistently in previous versions of this add-on - the following names are deprecated, but remain available for compatibility reasons for the time being:
- the collection of affected stack resources, e.g.
bamboo.custom.aws.cfn.stack.resources=i-3280997f;vol-e1debbcd;test-stack-SecurityGroup-KZWPADIUPCL6
- the status of each affected stack resource, e.g.
bamboo.custom.aws.cfn.stack.i-3280997f=CREATE_COMPLETE
- the collection of generated stack outputs, e.g.
bamboo.custom.aws.cfn.stack.outputs=sampleStackOutputKey;StringWithRegex;...
- the value of each generated stack output, e.g.
bamboo.custom.aws.cfn.stack.StringWithRegex=Hello
- Note: The variables with legacy naming without prefix remain available for compatibility (e.g.
bamboo.StringWithRegex=Hello
)
- Note: The variables with legacy naming without prefix remain available for compatibility (e.g.
AWS Elastic Beanstalk Environment
- the collection of affected environments, e.g.
bamboo.custom.aws.elasticbeanstalk.environment.resources=e-3rcffs78rn
relevant resource values for each affected environment, e.g.
custom.
aws.cloudformation.stack.resources.
=CREATE_COMPLETESampleStack-42
.StackStatus- properties converted to variables: EnvironmentId, ApplicationName, CNAME, DateCreated, DateUpdated, Description, EndpointURL, EnvironmentName, Health, SolutionStackName, Status, TemplateName, VersionLabel
Amazon EC2 Instance
- the collection of affected instances, e.g.
bamboo.custom.aws.ec2.instance.resources=i-fa7b4596;i-080eec64
relevant resource values for each affected instance, e.g.
custom.aws.ec2.image.resources.
i-fa7b4596
.State=running- properties converted to variables: InstanceId, State, PrivateDnsName, PrivateIpAddress, PublicDnsName, PublicIpAddress, LaunchTime
- collection converted to variables: tags
Amazon EC2 Image
- the collection of affected images, e.g.
bamboo.custom.aws.ec2.image.resources=ami-985b21f1;ami-9a5b21f3
- relevant resource values for each affected image, e.g.
custom.aws.ec2.image.resources.
ami-985b21f1
.State=available- properties converted to variables: ImageId, State
- collection converted to variables: tags
Amazon EBS Snapshots
- the collection of affected snapshots, e.g.
bamboo.custom.aws.ec2.snapshots.resources=snap-f4dc35a1
- relevant resource values for each affected snapshot, e.g.
custom.aws.ec2.
snapshot
.resources.snap-f4dc35a1
.State=completed
- properties converted to variables: SnapshotId, State, VolumeId, VolumeSize, StartTime
- collection converted to variables: tags