Example usage for com.amazonaws.services.ecs.model ListTasksRequest ListTasksRequest

List of usage examples for com.amazonaws.services.ecs.model ListTasksRequest ListTasksRequest

Introduction

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

Prototype

ListTasksRequest

Source Link

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;//from www  .j  a v a  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  ww  . j  av a  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;
}