Example usage for com.amazonaws.services.ecs.model TaskDefinition getTaskDefinitionArn

List of usage examples for com.amazonaws.services.ecs.model TaskDefinition getTaskDefinitionArn

Introduction

In this page you can find the example usage for com.amazonaws.services.ecs.model TaskDefinition getTaskDefinitionArn.

Prototype


public String getTaskDefinitionArn() 

Source Link

Document

The full Amazon Resource Name (ARN) of the task definition.

Usage

From source file:com.netflix.spinnaker.clouddriver.ecs.deploy.ops.CreateServerGroupAtomicOperation.java

License:Apache License

private Service createService(AmazonECS ecs, TaskDefinition taskDefinition, String ecsServiceRole,
        String version) {/*from w w w.ja  va2 s  .  com*/
    String serviceName = getNextServiceName(version);
    Collection<LoadBalancer> loadBalancers = new LinkedList<>();
    loadBalancers.add(retrieveLoadBalancer(version));

    Integer desiredCount = description.getCapacity().getDesired();
    String taskDefinitionArn = taskDefinition.getTaskDefinitionArn();

    DeploymentConfiguration deploymentConfiguration = new DeploymentConfiguration()
            .withMinimumHealthyPercent(100).withMaximumPercent(200);

    CreateServiceRequest request = new CreateServiceRequest().withServiceName(serviceName)
            .withDesiredCount(desiredCount).withCluster(description.getEcsClusterName())
            .withRole(ecsServiceRole).withLoadBalancers(loadBalancers).withTaskDefinition(taskDefinitionArn)
            .withPlacementStrategy(description.getPlacementStrategySequence())
            .withDeploymentConfiguration(deploymentConfiguration);

    updateTaskStatus(String.format("Creating %s of %s with %s for %s.", desiredCount, serviceName,
            taskDefinitionArn, description.getCredentialAccount()));

    Service service = ecs.createService(request).getService();

    updateTaskStatus(String.format("Done creating %s of %s with %s for %s.", desiredCount, serviceName,
            taskDefinitionArn, description.getCredentialAccount()));

    return service;
}

From source file:com.netflix.spinnaker.clouddriver.ecs.provider.agent.TaskDefinitionCachingAgent.java

License:Apache License

public static Map<String, Object> convertTaskDefinitionToAttributes(TaskDefinition taskDefinition) {
    Map<String, Object> attributes = new HashMap<>();
    attributes.put("taskDefinitionArn", taskDefinition.getTaskDefinitionArn());
    attributes.put("containerDefinitions", taskDefinition.getContainerDefinitions());
    attributes.put("taskRoleArn", taskDefinition.getTaskRoleArn());
    return attributes;
}

From source file:com.netflix.spinnaker.clouddriver.ecs.provider.agent.TaskDefinitionCachingAgent.java

License:Apache License

@Override
protected Map<String, Collection<CacheData>> generateFreshData(Collection<TaskDefinition> taskDefinitions) {
    Collection<CacheData> dataPoints = new LinkedList<>();

    for (TaskDefinition taskDefinition : taskDefinitions) {
        Map<String, Object> attributes = convertTaskDefinitionToAttributes(taskDefinition);
        String key = Keys.getTaskDefinitionKey(accountName, region, taskDefinition.getTaskDefinitionArn());
        dataPoints.add(new DefaultCacheData(key, attributes, Collections.emptyMap()));
    }/*w  w  w  .  j  a v  a 2  s . c om*/

    log.info("Caching " + dataPoints.size() + " task definitions in " + getAgentType());
    Map<String, Collection<CacheData>> dataMap = new HashMap<>();
    dataMap.put(TASK_DEFINITIONS.toString(), dataPoints);

    return dataMap;
}