List of usage examples for com.amazonaws.services.ecs AmazonECS listTasks
ListTasksResult listTasks(ListTasksRequest listTasksRequest);
Returns a list of tasks for a specified cluster.
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; }