Example usage for com.amazonaws.services.ecs AmazonECS listTasks

List of usage examples for com.amazonaws.services.ecs AmazonECS listTasks

Introduction

In this page you can find the example usage for com.amazonaws.services.ecs AmazonECS listTasks.

Prototype

ListTasksResult listTasks(ListTasksRequest listTasksRequest);

Source Link

Document

Returns a list of tasks for a specified cluster.

Usage

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

License:Apache License

@Override
protected List<Task> getItems(AmazonECS ecs, ProviderCache providerCache) {
    List<Task> taskList = new LinkedList<>();
    Set<String> clusters = getClusters(ecs, providerCache);

    for (String cluster : clusters) {
        String nextToken = null;/* www. ja  va 2  s  .  c o m*/
        do {
            ListTasksRequest listTasksRequest = new ListTasksRequest().withCluster(cluster);
            if (nextToken != null) {
                listTasksRequest.setNextToken(nextToken);
            }
            ListTasksResult listTasksResult = ecs.listTasks(listTasksRequest);
            List<String> taskArns = listTasksResult.getTaskArns();
            if (taskArns.size() == 0) {
                continue;
            }
            List<Task> tasks = ecs
                    .describeTasks(new DescribeTasksRequest().withCluster(cluster).withTasks(taskArns))
                    .getTasks();
            taskList.addAll(tasks);
            nextToken = listTasksResult.getNextToken();
        } while (nextToken != null && nextToken.length() != 0);
    }
    return taskList;
}

From source file:com.remediatetheflag.global.utils.AWSHelper.java

License:Apache License

public List<String> getRunningECSTasks(List<Region> activeRegions) {
    LinkedList<String> list = new LinkedList<String>();
    for (Region region : activeRegions) {
        logger.debug("Enumerating running tasks on cluster " + RTFConfig.getExercisesCluster() + " for region "
                + region.getName());/*w w  w .  ja va  2s. c o m*/
        AmazonECS client = AmazonECSClientBuilder.standard().withRegion(Regions.fromName(region.getName()))
                .withCredentials(new DefaultAWSCredentialsProviderChain()).build();
        ListTasksRequest request = new ListTasksRequest().withCluster(RTFConfig.getExercisesCluster());
        try {
            ListTasksResult response = client.listTasks(request);
            list.addAll(response.getTaskArns());
        } catch (Exception e) {
            logger.error("Error getRunningECSTasks for region " + region + " due to:\n" + e.getMessage());
        }
    }
    return list;
}