The following macros are not currently supported in the header:
  • unmigrated-wiki-markup

Documentation for Tasks for AWS 2.10 – other releases are available in the Tasks for AWS Documentation Directory.
View

Unknown macro: {spacejump}

or visit the current documentation home.

Using the Amazon EC2 Image task in Bamboo

You can use the Amazon EC2 Image task to create, delete or backup images (AMIs) of EBS backed Amazon Elastic Compute Cloud (Amazon EC2) instances; in particular, the task provides backup management with retention handling and backup set correlation.

On this page:

Configuration

Changes to action names in release 2.10.3

As of release 2.10.3, there are two new API compatible EC2 Image actions and the former backup oriented actions have been renamed as follows to better reflect their scope (refer to UAA-93 - Getting issue details... STATUS for details/background):

Old action nameNew action nameNotes
N/ACreate Image(s)New in 2.10.3
N/ADelete Image(s)New in 2.10.3
Create Image(s)Grow Image Backup Set 
Delete Image(s)Prune Image Backup Set 
Backup Image(s)Grow & Prune Image Backup Set 

(info) This is a name change only and no action needs to be taken: existing tasks simply use the new names now and their configuration remains unchanged.

To configure an Amazon EC2 Image task:

  1. Navigate to the Tasks configuration tab for the job (this will be the default job if creating a new plan).
  2. Click the name of an existing Amazon EC2 Image task, or click Add Task and then Amazon EC2 Image Task to create a new task.
  3. Complete the following settings:

    1. Common to all tasks

       Click here to expand...

      Task Description (Optional) Identify the purpose of the task.
      Disable this task

      Check, or clear, to selectively run this task.

      Action

      Each task supports one or more actions depending on the target AWS resource. Select the desired action and configure the action specific parameters below.

      RegionSelect the desired AWS Region. Alternatively, select [Use region variable ...] to supply the region dynamically via Bamboo variables (needs to be a region code such as ap-southeast-2) - refer to How to parametrize the AWS region via a Bamboo variable for details.
      ...Configure task/action specific parameters, see below ...
      AWS Security Credentials 
      SourceSelect the source for the required AWS Security Credentials - can be either Inline, an IAM Role for EC2 or a shared Identity Federation for AWS Connector.
      Connector(Conditional) Select the shared Identity Federation for AWS Connector. Alternatively, select [Use connector variable ...] to supply the connector dynamically via Bamboo variables (needs to be a connector id such as f24e81bc-7aff-42db-86a2-7cf82e24d871) - refer to How to parametrize the AWS connector via a Bamboo variable for details.

    • Actions supported by this task:

      Create Image(s)

      Custom Variables

      In addition to the the regular Bamboo Variable Substitution/Definition, the Create Image(s) action's Image Name, Description and Tags fields also support Custom Variables to ease composing unique names when targeting multiple EC2 instances at once. For example, you can refer to the source instance and add a timestamp to create the unique name ${utoolity.aws.instanceId}.${utoolity.iso8601.basicDateTime}.

      (info) These custom variables have task scope only (rather than the regular local scope aka job scope), i.e. they cease to exist when this task finishes.

      Instance ID

      (Optional) Specify one or more instance IDs (semicolon separated).

      Instance Filters

      (Optional) Specify resource filters in JSON format. Insert fragments from the inline Examples dialog to get started.

      Image NameSpecify the image name.
      DescriptionDescribe the image.
      Don't fail for empty filter resultCheck to prevent the task failing if no matching resources are found.
      No rebootIf unchecked (default) Amazon EC2 attempts to shut down the instance cleanly before image creation and then reboots the instance. If checked, Amazon EC2 doesn't shut down the instance before creating the image.
      • (warning) When this option is used, file system integrity on the created image can't be guaranteed.
      TagsSpecify tags in JSON format.

      Delete Image(s)

      Snapshot Deletion

      This action currently implies deletion of the backing EBS snapshots, which only works if those are not in use by another EC2 image still. Please watch/vote/comment on UAA-163 - Getting issue details... STATUS if your use case requires to deregister an image as a standalone action.

      Image ID

      (Optional) Specify one or more image IDs (semicolon separated).

      Image Filters

      (Optional) Specify resource filters in JSON format. Insert fragments from the inline Examples dialog to get started.

      Don't fail for empty filter resultsee Create above

      Grow Image Backup Set

       
      Instance ID

      (Optional) Specify one or more instance IDs (semicolon separated).

      Filters

      (Optional) Specify resource filters in JSON format. Insert fragments from the inline Examples dialog to get started.

      Don't fail for empty filter resultCheck to prevent the task failing if no matching resources are found.
      No rebootIf unchecked (default) Amazon EC2 attempts to shut down the instance cleanly before image creation and then reboots the instance. If checked, Amazon EC2 doesn't shut down the instance before creating the image.
      • (warning) When this option is used, file system integrity on the created image can't be guaranteed.
      Backup SetSpecify the name of the backup set, which determines retention correlation.

      Prune Image Backup Set

       
      Instance ID

      see Create above

      Filters
      see Create above
      Don't fail for empty filter resultsee Create above
      Backup Setsee Create above
      Backup RetentionSpecify the number of backups that should be retained.

      Grow & Prune Image Backup Set

      custom action to combine Grow and Prune, effectively capping the number of retained backups
      Instance ID

      see Create above

      Filters
      see Create above
      Don't fail for empty filter resultsee Create above
      No rebootsee Create above
      Backup Setsee Create above
      Backup Retentionsee Delete above

Variables

All tasks support Bamboo Variable Substitution/Definition - this task's actions generate variables as follows:

A task's generated variables might get amended with respective AWS API additions over time - a live build log will always provide the most current variable shape accordingly

Create Image(s)

The logged bamboo.custom.aws.ec2.image.first.tags outputs are example tags composed via custom variables and regular Bamboo variables, i.e. you need to specify any desired tags yourself as JSON input for the Tags field.

Creating common variables for 2 resources affected by task:
... bamboo.custom.aws.ec2.image.resources: ami-8cbdaee6;ami-eebead84
Creating resource variables for image 'ami-8cbdaee6':
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.Architecture: x86_64
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.CreationDate: 2016-04-12T23:18:41.000Z
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.Description: Image created by TAWS-IT2103-EC22-14 from i-ccb9ab23 at 20160412T231840Z
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.Hypervisor: xen
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.ImageId: ami-8cbdaee6
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.ImageLocation: 309600995652/taws-it-2103-i-ccb9ab23-20160412T231840Z
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.ImageOwnerAlias: null
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.ImageType: machine
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.KernelId: null
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.Name: taws-it-2103-i-ccb9ab23-20160412T231840Z
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.OwnerId: 309600995652
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.Platform: null
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.Public: false
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.RamdiskId: null
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.RootDeviceName: /dev/xvda
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.RootDeviceType: ebs
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.SriovNetSupport: simple
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.State: available
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.StateReason: null
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.VirtualizationType: hvm
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.tags: basicDate;basicTimeMilliseconds;basicTime;basicDateTimeMilliseconds;buildResultKey;instanceId;basicDateTime
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.tags.basicDate: 20160412
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.tags.basicTimeMilliseconds: 231840.876Z
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.tags.basicTime: 231840Z
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.tags.basicDateTimeMilliseconds: 20160412T231840.876Z
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.tags.buildResultKey: TAWS-IT2103-EC22-14
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.tags.instanceId: i-ccb9ab23
... bamboo.custom.aws.ec2.image.resources.ami-8cbdaee6.tags.basicDateTime: 20160412T231840Z
...
Creating common variables for first resource affected by task:
Creating resource variables for image 'ami-8cbdaee6':
... bamboo.custom.aws.ec2.image.first.Architecture: x86_64
... bamboo.custom.aws.ec2.image.first.CreationDate: 2016-04-12T23:18:41.000Z
... bamboo.custom.aws.ec2.image.first.Description: Image created by TAWS-IT2103-EC22-14 from i-ccb9ab23 at 20160412T231840Z
... bamboo.custom.aws.ec2.image.first.Hypervisor: xen
... bamboo.custom.aws.ec2.image.first.ImageId: ami-8cbdaee6
... bamboo.custom.aws.ec2.image.first.ImageLocation: 309600995652/taws-it-2103-i-ccb9ab23-20160412T231840Z
... bamboo.custom.aws.ec2.image.first.ImageOwnerAlias: null
... bamboo.custom.aws.ec2.image.first.ImageType: machine
... bamboo.custom.aws.ec2.image.first.KernelId: null
... bamboo.custom.aws.ec2.image.first.Name: taws-it-2103-i-ccb9ab23-20160412T231840Z
... bamboo.custom.aws.ec2.image.first.OwnerId: 309600995652
... bamboo.custom.aws.ec2.image.first.Platform: null
... bamboo.custom.aws.ec2.image.first.Public: false
... bamboo.custom.aws.ec2.image.first.RamdiskId: null
... bamboo.custom.aws.ec2.image.first.RootDeviceName: /dev/xvda
... bamboo.custom.aws.ec2.image.first.RootDeviceType: ebs
... bamboo.custom.aws.ec2.image.first.SriovNetSupport: simple
... bamboo.custom.aws.ec2.image.first.State: available
... bamboo.custom.aws.ec2.image.first.StateReason: null
... bamboo.custom.aws.ec2.image.first.VirtualizationType: hvm
... bamboo.custom.aws.ec2.image.first.tags: basicDate;basicTimeMilliseconds;basicTime;basicDateTimeMilliseconds;buildResultKey;instanceId;basicDateTime
... bamboo.custom.aws.ec2.image.first.tags.basicDate: 20160412
... bamboo.custom.aws.ec2.image.first.tags.basicTimeMilliseconds: 231840.876Z
... bamboo.custom.aws.ec2.image.first.tags.basicTime: 231840Z
... bamboo.custom.aws.ec2.image.first.tags.basicDateTimeMilliseconds: 20160412T231840.876Z
... bamboo.custom.aws.ec2.image.first.tags.buildResultKey: TAWS-IT2103-EC22-14
... bamboo.custom.aws.ec2.image.first.tags.instanceId: i-ccb9ab23
... bamboo.custom.aws.ec2.image.first.tags.basicDateTime: 20160412T231840Z

Delete Image(s)

N/A

Grow Image Backup Set

Creating common variables for 2 resources affected by task:
... bamboo.custom.aws.ec2.image.resources: ami-a5bfaccf;ami-e5bead8f
Creating resource variables for image 'ami-a5bfaccf':
... bamboo.custom.aws.ec2.image.resources.ami-a5bfaccf.Architecture: x86_64
... bamboo.custom.aws.ec2.image.resources.ami-a5bfaccf.CreationDate: 2016-04-12T23:21:30.000Z
... bamboo.custom.aws.ec2.image.resources.ami-a5bfaccf.Description: Created by Bamboo EC2 Image Task from i-cdb9ab22
... bamboo.custom.aws.ec2.image.resources.ami-a5bfaccf.Hypervisor: xen
... bamboo.custom.aws.ec2.image.resources.ami-a5bfaccf.ImageId: ami-a5bfaccf
... bamboo.custom.aws.ec2.image.resources.ami-a5bfaccf.ImageLocation: 309600995652/i-cdb9ab22.20160412T232130Z
... bamboo.custom.aws.ec2.image.resources.ami-a5bfaccf.ImageOwnerAlias: null
... bamboo.custom.aws.ec2.image.resources.ami-a5bfaccf.ImageType: machine
... bamboo.custom.aws.ec2.image.resources.ami-a5bfaccf.KernelId: null
... bamboo.custom.aws.ec2.image.resources.ami-a5bfaccf.Name: i-cdb9ab22.20160412T232130Z
... bamboo.custom.aws.ec2.image.resources.ami-a5bfaccf.OwnerId: 309600995652
... bamboo.custom.aws.ec2.image.resources.ami-a5bfaccf.Platform: null
... bamboo.custom.aws.ec2.image.resources.ami-a5bfaccf.Public: false
... bamboo.custom.aws.ec2.image.resources.ami-a5bfaccf.RamdiskId: null
... bamboo.custom.aws.ec2.image.resources.ami-a5bfaccf.RootDeviceName: /dev/xvda
... bamboo.custom.aws.ec2.image.resources.ami-a5bfaccf.RootDeviceType: ebs
... bamboo.custom.aws.ec2.image.resources.ami-a5bfaccf.SriovNetSupport: simple
... bamboo.custom.aws.ec2.image.resources.ami-a5bfaccf.State: available
... bamboo.custom.aws.ec2.image.resources.ami-a5bfaccf.StateReason: null
... bamboo.custom.aws.ec2.image.resources.ami-a5bfaccf.VirtualizationType: hvm
... bamboo.custom.aws.ec2.image.resources.ami-a5bfaccf.tags: Name;Backup Policy
... bamboo.custom.aws.ec2.image.resources.ami-a5bfaccf.tags.Name: taws-it-245-1.20160412T232130Z
... bamboo.custom.aws.ec2.image.resources.ami-a5bfaccf.tags.Backup Policy: taws-it-245
...
Creating common variables for first resource affected by task:
Creating resource variables for image 'ami-a5bfaccf':
... bamboo.custom.aws.ec2.image.first.Architecture: x86_64
... bamboo.custom.aws.ec2.image.first.CreationDate: 2016-04-12T23:21:30.000Z
... bamboo.custom.aws.ec2.image.first.Description: Created by Bamboo EC2 Image Task from i-cdb9ab22
... bamboo.custom.aws.ec2.image.first.Hypervisor: xen
... bamboo.custom.aws.ec2.image.first.ImageId: ami-a5bfaccf
... bamboo.custom.aws.ec2.image.first.ImageLocation: 309600995652/i-cdb9ab22.20160412T232130Z
... bamboo.custom.aws.ec2.image.first.ImageOwnerAlias: null
... bamboo.custom.aws.ec2.image.first.ImageType: machine
... bamboo.custom.aws.ec2.image.first.KernelId: null
... bamboo.custom.aws.ec2.image.first.Name: i-cdb9ab22.20160412T232130Z
... bamboo.custom.aws.ec2.image.first.OwnerId: 309600995652
... bamboo.custom.aws.ec2.image.first.Platform: null
... bamboo.custom.aws.ec2.image.first.Public: false
... bamboo.custom.aws.ec2.image.first.RamdiskId: null
... bamboo.custom.aws.ec2.image.first.RootDeviceName: /dev/xvda
... bamboo.custom.aws.ec2.image.first.RootDeviceType: ebs
... bamboo.custom.aws.ec2.image.first.SriovNetSupport: simple
... bamboo.custom.aws.ec2.image.first.State: available
... bamboo.custom.aws.ec2.image.first.StateReason: null
... bamboo.custom.aws.ec2.image.first.VirtualizationType: hvm
... bamboo.custom.aws.ec2.image.first.tags: Name;Backup Policy
... bamboo.custom.aws.ec2.image.first.tags.Name: taws-it-245-1.20160412T232130Z
... bamboo.custom.aws.ec2.image.first.tags.Backup Policy: taws-it-245

Prune Image Backup Set

N/A

Grow & Prune Image Backup Set

See Grow above.

How-to Articles

Frequently Asked Questions (FAQ)