aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/core/Platform.scala
diff options
context:
space:
mode:
authorJakob Odersky <jakob@driver.xyz>2018-09-03 23:40:35 -0700
committerJakob Odersky <jakob@driver.xyz>2018-09-12 14:17:39 -0700
commit9c36ff4f9e43857e2f73ebadad9942d85017e5c0 (patch)
tree2dffe5ec8ce2c17a63db528827db671447ce8feb /src/main/scala/xyz/driver/core/Platform.scala
parentadb943605e6e41d10d7b6984b515a13b7ad84de7 (diff)
downloaddriver-core-9c36ff4f9e43857e2f73ebadad9942d85017e5c0.tar.gz
driver-core-9c36ff4f9e43857e2f73ebadad9942d85017e5c0.tar.bz2
driver-core-9c36ff4f9e43857e2f73ebadad9942d85017e5c0.zip
Move platform back into init and use a configurable DNS discovery
Diffstat (limited to 'src/main/scala/xyz/driver/core/Platform.scala')
-rw-r--r--src/main/scala/xyz/driver/core/Platform.scala35
1 files changed, 0 insertions, 35 deletions
diff --git a/src/main/scala/xyz/driver/core/Platform.scala b/src/main/scala/xyz/driver/core/Platform.scala
deleted file mode 100644
index aa7e711..0000000
--- a/src/main/scala/xyz/driver/core/Platform.scala
+++ /dev/null
@@ -1,35 +0,0 @@
-package xyz.driver.core
-import java.nio.file.{Files, Path, Paths}
-
-import com.google.auth.oauth2.ServiceAccountCredentials
-
-sealed trait Platform {
- def isKubernetes: Boolean
-}
-
-object Platform {
- case class GoogleCloud(keyfile: Path, namespace: String) extends Platform {
- def credentials: ServiceAccountCredentials = ServiceAccountCredentials.fromStream(
- Files.newInputStream(keyfile)
- )
- def project: String = credentials.getProjectId
- override def isKubernetes = true
- }
- // case object AliCloud extends Platform
- case object Dev extends Platform {
- override def isKubernetes: Boolean = false
- }
-
- lazy val fromEnv: Platform = {
- def isGoogle = sys.env.get("GOOGLE_APPLICATION_CREDENTIALS").map { value =>
- val keyfile = Paths.get(value)
- require(Files.isReadable(keyfile), s"Google credentials file $value is not readable.")
- val namespace = sys.env.getOrElse("SERVICE_NAMESPACE", sys.error("Namespace not set"))
- GoogleCloud(keyfile, namespace)
- }
- isGoogle.getOrElse(Dev)
- }
-
- def current: Platform = fromEnv
-
-}