in discovery-aws-api-async/src/main/scala/org/apache/pekko/discovery/awsapi/ecs/AsyncEcsTaskSetDiscovery.scala [95:110]
private def resolveTasks(ecsClient: EcsAsyncClient, cluster: String, httpClient: HttpExt)(
implicit
ec: ExecutionContext,
mat: Materializer): Future[Seq[Task]] =
for {
taskArn <- resolveTaskMetadata(httpClient).map(_.map(_.TaskARN))
taskSet <- taskArn match {
case Some(arn) => resolveTaskSet(ecsClient, cluster, arn)
case None => Future.successful(None)
}
taskArns <- taskSet match {
case Some(ts) => listTaskArns(ecsClient, cluster, ts)
case None => Future.successful(Seq.empty[String])
}
tasks <- describeTasks(ecsClient, cluster, taskArns)
} yield tasks