diff --git a/build.sc b/build.sc index 79af66a..06f352f 100644 --- a/build.sc +++ b/build.sc @@ -22,6 +22,7 @@ trait KubernetesClientModule with StyleModule with GitVersionedPublishModule with SwaggerModelGenerator { + def kubernetesSwagger = downloadedKubernetesSwagger lazy val jvmVersion = "11" override def javacOptions = super.javacOptions() ++ Seq("-source", jvmVersion, "-target", jvmVersion) override def scalacOptions = super.scalacOptions() ++ ScalacOptions.tokensForVersion( @@ -49,3 +50,13 @@ trait KubernetesClientModule developers = Seq(Developer("joan38", "Joan Goyeau", "https://github.com/joan38")) ) } + +def kubernetesVersion: T[String] = T("1.31.1") + +def downloadedKubernetesSwagger: T[String] = T { + requests + .get( + s"https://raw.githubusercontent.com/kubernetes/kubernetes/refs/tags/v${kubernetesVersion()}/api/openapi-spec/swagger.json" + ) + .text() +} diff --git a/project/SwaggerModelGenerator.sc b/project/SwaggerModelGenerator.sc index db2d8f5..d4027fe 100644 --- a/project/SwaggerModelGenerator.sc +++ b/project/SwaggerModelGenerator.sc @@ -12,19 +12,11 @@ import io.circe.generic.auto._ import io.circe.parser._ import os._ -def kubernetesVersion: T[String] = T("1.31.1") - -def kubernetesSwagger: T[String] = T { - requests - .get( - s"https://raw.githubusercontent.com/kubernetes/kubernetes/refs/tags/v${kubernetesVersion()}/api/openapi-spec/swagger.json" - ) - .text() -} - trait SwaggerModelGenerator extends JavaModule { import SwaggerModelGenerator._ + def kubernetesSwagger: T[String] + override def generatedSources = T { super.generatedSources() ++ processSwaggerFile(kubernetesSwagger(), T.ctx().dest, T.ctx().log).map(PathRef(_))