From 4a3b78ec3534c496590c1b9ccaffef28ce1af78b Mon Sep 17 00:00:00 2001 From: Bendix Saeltz Date: Wed, 6 Apr 2022 15:31:59 +0200 Subject: [PATCH 1/2] Set asyncCredentialUpdateEnabled true for InstanceProfileCredentialsProvider Signed-off-by: Bendix Saeltz --- .../io/moia/scalaHttpClient/AwsRequestSigner.scala | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/main/scala/io/moia/scalaHttpClient/AwsRequestSigner.scala b/src/main/scala/io/moia/scalaHttpClient/AwsRequestSigner.scala index 97be225..6857845 100644 --- a/src/main/scala/io/moia/scalaHttpClient/AwsRequestSigner.scala +++ b/src/main/scala/io/moia/scalaHttpClient/AwsRequestSigner.scala @@ -5,7 +5,7 @@ import akka.http.scaladsl.model.{HttpHeader, HttpRequest, Uri} import akka.stream.Materializer import akka.stream.scaladsl.StreamConverters import com.typesafe.scalalogging.StrictLogging -import software.amazon.awssdk.auth.credentials._ +import software.amazon.awssdk.auth.credentials.* import software.amazon.awssdk.auth.signer.{Aws4Signer, AwsSignerExecutionAttribute} import software.amazon.awssdk.core.interceptor.ExecutionAttributes import software.amazon.awssdk.http.{SdkHttpFullRequest, SdkHttpMethod} @@ -17,10 +17,10 @@ import software.amazon.awssdk.services.sts.model.AssumeRoleRequest import java.io.InputStream import java.net.URI import java.util -import scala.collection.compat._ -import scala.collection.immutable._ +import scala.collection.compat.* +import scala.collection.immutable.* import scala.concurrent.{blocking, Future} -import scala.jdk.CollectionConverters._ +import scala.jdk.CollectionConverters.* class AwsRequestSigner private (credentialsProvider: AwsCredentialsProvider, region: String)(implicit mat: Materializer) extends StrictLogging { private val awsSigner = Aws4Signer.create() @@ -133,7 +133,7 @@ object AwsRequestSigner extends StrictLogging { def fromConfig(config: AwsRequestSignerConfig)(implicit mat: Materializer): AwsRequestSigner = config match { case AwsRequestSignerConfig.Instance(awsRegion) => - val provider = InstanceProfileCredentialsProvider.create() + val provider = InstanceProfileCredentialsProvider.builder().asyncCredentialUpdateEnabled(true).build() new AwsRequestSigner(provider, awsRegion) case AwsRequestSignerConfig.AssumeRole(roleArn, roleSessionName, awsRegion) => logger.info(s"Assuming role from config $config.") From a933bba5faa8bac0b35e2f62f0cabb7f427950b6 Mon Sep 17 00:00:00 2001 From: Bendix Saeltz Date: Wed, 6 Apr 2022 15:38:36 +0200 Subject: [PATCH 2/2] Revert import changes Signed-off-by: Bendix Saeltz --- .../scala/io/moia/scalaHttpClient/AwsRequestSigner.scala | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/scala/io/moia/scalaHttpClient/AwsRequestSigner.scala b/src/main/scala/io/moia/scalaHttpClient/AwsRequestSigner.scala index 6857845..d175d18 100644 --- a/src/main/scala/io/moia/scalaHttpClient/AwsRequestSigner.scala +++ b/src/main/scala/io/moia/scalaHttpClient/AwsRequestSigner.scala @@ -5,7 +5,7 @@ import akka.http.scaladsl.model.{HttpHeader, HttpRequest, Uri} import akka.stream.Materializer import akka.stream.scaladsl.StreamConverters import com.typesafe.scalalogging.StrictLogging -import software.amazon.awssdk.auth.credentials.* +import software.amazon.awssdk.auth.credentials._ import software.amazon.awssdk.auth.signer.{Aws4Signer, AwsSignerExecutionAttribute} import software.amazon.awssdk.core.interceptor.ExecutionAttributes import software.amazon.awssdk.http.{SdkHttpFullRequest, SdkHttpMethod} @@ -17,10 +17,10 @@ import software.amazon.awssdk.services.sts.model.AssumeRoleRequest import java.io.InputStream import java.net.URI import java.util -import scala.collection.compat.* -import scala.collection.immutable.* +import scala.collection.compat._ +import scala.collection.immutable._ import scala.concurrent.{blocking, Future} -import scala.jdk.CollectionConverters.* +import scala.jdk.CollectionConverters._ class AwsRequestSigner private (credentialsProvider: AwsCredentialsProvider, region: String)(implicit mat: Materializer) extends StrictLogging { private val awsSigner = Aws4Signer.create()