private static List findExpiredClusters()

in infrastructure/src/main/java/org/apache/geode/infrastructure/aws/ExpireClusters.java [56:76]


  private static List<String> findExpiredClusters() {
    Instant expirationTime = getExpirationTime().toInstant();

    DescribeInstancesResponse describeInstancesResponse = ec2.describeInstances(
        DescribeInstancesRequest.builder()
            .filters(Filter.builder()
                .name("instance-state-name")
                .values("running")
                .build())
            .build());
    Stream<Instance> instances = describeInstancesResponse.reservations().stream()
        .flatMap(reservation -> reservation.instances().stream());

    Stream<Instance> expiredInstances = instances
        .filter(instance -> isBefore(instance.getValueForField("LaunchTime", Instant.class),
            expirationTime));
    Stream<String> tags = expiredInstances.map(ExpireClusters::getTagForInstance);
    List<String> distinctTags =
        tags.distinct().filter(tag -> !tag.isEmpty()).collect(Collectors.toList());
    return distinctTags;
  }