diff --git a/discovery-kubernetes-api/src/main/scala/org/apache/pekko/discovery/kubernetes/KubernetesApiServiceDiscovery.scala b/discovery-kubernetes-api/src/main/scala/org/apache/pekko/discovery/kubernetes/KubernetesApiServiceDiscovery.scala index dd9f9631..279a28a5 100644 --- a/discovery-kubernetes-api/src/main/scala/org/apache/pekko/discovery/kubernetes/KubernetesApiServiceDiscovery.scala +++ b/discovery-kubernetes-api/src/main/scala/org/apache/pekko/discovery/kubernetes/KubernetesApiServiceDiscovery.scala @@ -96,13 +96,14 @@ object KubernetesApiServiceDiscovery { * An alternative implementation that uses the Kubernetes API. The main advantage of this method is that it allows * you to define readiness/health checks that don't affect the bootstrap mechanism. */ -class KubernetesApiServiceDiscovery(implicit system: ActorSystem) extends ServiceDiscovery { +class KubernetesApiServiceDiscovery(settings: Settings)( + implicit system: ActorSystem) extends ServiceDiscovery { import system.dispatcher private val http = Http() - private val settings = Settings(system) + def this()(implicit system: ActorSystem) = this(Settings(system)) private val log = Logging(system, getClass)(LogSource.fromClass) diff --git a/discovery-kubernetes-api/src/main/scala/org/apache/pekko/discovery/kubernetes/Settings.scala b/discovery-kubernetes-api/src/main/scala/org/apache/pekko/discovery/kubernetes/Settings.scala index 55d6af21..afbb7394 100644 --- a/discovery-kubernetes-api/src/main/scala/org/apache/pekko/discovery/kubernetes/Settings.scala +++ b/discovery-kubernetes-api/src/main/scala/org/apache/pekko/discovery/kubernetes/Settings.scala @@ -20,7 +20,9 @@ import com.typesafe.config.Config import org.apache.pekko.util.OptionConverters._ -final class Settings(system: ExtendedActorSystem) extends Extension { +final class Settings(kubernetesApi: Config) extends Extension { + + def this(system: ExtendedActorSystem) = this(system.settings.config.getConfig("pekko.discovery.kubernetes-api")) /** * Copied from PekkoManagementSettings, which we don't depend on. @@ -35,8 +37,6 @@ final class Settings(system: ExtendedActorSystem) extends Extension { if (hasDefined(key)) Some(config.getString(key)) else None } - private val kubernetesApi = system.settings.config.getConfig("pekko.discovery.kubernetes-api") - val apiCaPath: String = kubernetesApi.getString("api-ca-path") diff --git a/integration-test/dns-api-mesos/build.sbt b/integration-test/dns-api-mesos/build.sbt index 01177505..7cf5c61b 100644 --- a/integration-test/dns-api-mesos/build.sbt +++ b/integration-test/dns-api-mesos/build.sbt @@ -10,7 +10,7 @@ enablePlugins(JavaAppPackaging) name := "bootstrap-demo-dns-api" -scalaVersion := "2.13.14" +scalaVersion := "2.13.15" def pekkoManagementVersion(version: String) = version.split('+')(0) diff --git a/integration-test/marathon-api-docker/build.sbt b/integration-test/marathon-api-docker/build.sbt index 4f057991..52292eeb 100644 --- a/integration-test/marathon-api-docker/build.sbt +++ b/integration-test/marathon-api-docker/build.sbt @@ -11,7 +11,7 @@ import com.typesafe.sbt.packager.docker._ name := "bootstrap-demo-marathon-api-docker" -scalaVersion := "2.13.14" +scalaVersion := "2.13.15" enablePlugins(JavaServerAppPackaging) diff --git a/integration-test/marathon-api/build.sbt b/integration-test/marathon-api/build.sbt index 5294c271..b64e7179 100644 --- a/integration-test/marathon-api/build.sbt +++ b/integration-test/marathon-api/build.sbt @@ -13,7 +13,7 @@ name := "bootstrap-demo-marathon-api" version := "1.1.4" -scalaVersion := "2.13.14" +scalaVersion := "2.13.15" val pekkoManagementVersion = "1.0.0" diff --git a/project/Dependencies.scala b/project/Dependencies.scala index f831b099..3a5381c9 100644 --- a/project/Dependencies.scala +++ b/project/Dependencies.scala @@ -12,7 +12,7 @@ import sbt._ object Dependencies { // keep in sync with .github/workflows/unit-tests.yml val scala212Version = "2.12.20" - val scala213Version = "2.13.14" + val scala213Version = "2.13.15" val scala3Version = "3.3.4" val crossScalaVersions = Seq(scala212Version, scala213Version, scala3Version) @@ -25,7 +25,7 @@ object Dependencies { val scalaTestPlusJUnitVersion = scalaTestVersion + ".0" val awsSdkVersion = "1.12.772" - val guavaVersion = "33.3.0-jre" + val guavaVersion = "33.3.1-jre" val jacksonVersion = "2.17.2" val log4j2Version = "2.23.1" @@ -104,7 +104,7 @@ object Dependencies { "org.apache.pekko" %% "pekko-stream" % pekkoVersion, "org.apache.pekko" %% "pekko-http" % pekkoHttpVersion, "org.apache.pekko" %% "pekko-http-spray-json" % pekkoHttpVersion, - ("software.amazon.awssdk" % "ecs" % "2.27.24").exclude("software.amazon.awssdk", "apache-client"), + ("software.amazon.awssdk" % "ecs" % "2.28.11").exclude("software.amazon.awssdk", "apache-client"), "org.scalatest" %% "scalatest" % scalaTestVersion % Test) ++ jacksonDatabind // aws-java-sdk depends on insecure version of jackson val managementHttp = Seq( diff --git a/project/PekkoHttpDependency.scala b/project/PekkoHttpDependency.scala index 20d1196e..820779b6 100644 --- a/project/PekkoHttpDependency.scala +++ b/project/PekkoHttpDependency.scala @@ -20,5 +20,5 @@ import com.github.pjfanning.pekkobuild.PekkoDependency object PekkoHttpDependency extends PekkoDependency { override val checkProject: String = "pekko-http-testkit" override val module: Option[String] = Some("http") - override val currentVersion: String = "1.1.0-M1" + override val currentVersion: String = "1.1.0" }