Details
-
Bug
-
Resolution: Fixed
-
Highest
-
None
-
6.10.2
-
None
-
1
-
Severity 2 - Major
-
Description
Issue Summary
Attempting to spin up an elastic agent from one of the stock AMIs results in a permissions error
Environment
Bamboo 6.10.2
Steps to Reproduce
- Configure an Elastic Image to use one of the new stock images from Bamboo 6.10.2
- attempt to start an Elastic Agent using this instance
Expected Results
Elastic Instance and Agent both start.
Actual Results
The below exception is thrown in the atlassian-bamboo.log file:
java.lang.NullPointerException: Unable to find ami-0c5856a1aa5cf29f3, make sure it exists and your account has permissions to access it at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:226) at com.atlassian.aws.ec2.awssdk.launch.LauncherUtils.getBlockDeviceMappings(LauncherUtils.java:42) at com.atlassian.aws.ec2.awssdk.launch.AwsInstanceLauncher.getRunInstancesRequest(AwsInstanceLauncher.java:120) at com.atlassian.aws.ec2.awssdk.launch.AwsInstanceLauncher.runInstance(AwsInstanceLauncher.java:95) at com.atlassian.aws.ec2.awssdk.launch.AwsInstanceLauncher.call(AwsInstanceLauncher.java:69) at com.atlassian.aws.ec2.RemoteEC2InstanceImpl.launchInstance(RemoteEC2InstanceImpl.java:363) at com.atlassian.aws.ec2.RemoteEC2InstanceImpl.backgroundStart(RemoteEC2InstanceImpl.java:346) at com.atlassian.aws.ec2.RemoteEC2InstanceImpl.access$100(RemoteEC2InstanceImpl.java:39) at com.atlassian.aws.ec2.RemoteEC2InstanceImpl$1.run(RemoteEC2InstanceImpl.java:95) at com.atlassian.aws.ec2.RemoteEC2InstanceImpl$CatchingRunnableDecorator.run(RemoteEC2InstanceImpl.java:79) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:748)
Workaround
There once was a workaround here, but it's no longer necessary since the issue is fixed so we've removed it prevent any confusion.