List of usage examples for com.amazonaws.services.ecs.model RegisterTaskDefinitionRequest setTaskRoleArn
public void setTaskRoleArn(String taskRoleArn)
The short name or full Amazon Resource Name (ARN) of the IAM role that containers in this task can assume.
From source file:com.netflix.spinnaker.clouddriver.ecs.deploy.ops.CreateServerGroupAtomicOperation.java
License:Apache License
private TaskDefinition registerTaskDefinition(AmazonECS ecs, String version) { Collection<KeyValuePair> containerEnvironment = new LinkedList<>(); containerEnvironment.add(new KeyValuePair().withName("SERVER_GROUP").withValue(version)); containerEnvironment.add(new KeyValuePair().withName("CLOUD_STACK").withValue(description.getStack())); containerEnvironment//from w w w . j av a 2 s . c o m .add(new KeyValuePair().withName("CLOUD_DETAIL").withValue(description.getFreeFormDetails())); PortMapping portMapping = new PortMapping().withHostPort(0) .withContainerPort(description.getContainerPort()) .withProtocol(description.getPortProtocol() != null ? description.getPortProtocol() : "tcp"); Collection<PortMapping> portMappings = new LinkedList<>(); portMappings.add(portMapping); ContainerDefinition containerDefinition = new ContainerDefinition().withName(version) .withEnvironment(containerEnvironment).withPortMappings(portMappings) .withCpu(description.getComputeUnits()).withMemoryReservation(description.getReservedMemory()) .withImage(description.getDockerImageAddress()); Collection<ContainerDefinition> containerDefinitions = new LinkedList<>(); containerDefinitions.add(containerDefinition); RegisterTaskDefinitionRequest request = new RegisterTaskDefinitionRequest() .withContainerDefinitions(containerDefinitions).withFamily(getFamilyName()); if (!description.getIamRole().equals("None (No IAM role)")) { checkRoleTrustRelations(description.getIamRole()); request.setTaskRoleArn(description.getIamRole()); } RegisterTaskDefinitionResult registerTaskDefinitionResult = ecs.registerTaskDefinition(request); return registerTaskDefinitionResult.getTaskDefinition(); }