private def resolveTasks()

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