From 4af1c5f1e52e9b4a568582d1f43c40a581bb65a2 Mon Sep 17 00:00:00 2001 From: Alexander Ryabokon Date: Thu, 19 Oct 2023 14:51:47 +0300 Subject: [PATCH] Fix docker image building (#9) * Fix docker image building * Enable validation --- build.gradle.kts | 26 +++++++++++++++++++++++--- gradle.properties | 1 + 2 files changed, 24 insertions(+), 3 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 4052c28..7df30a9 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -76,14 +76,21 @@ springBoot { buildInfo() } +val dockerRegistry = System.getenv().getOrDefault("DOCKER_REGISTRY", project.properties["docker.registry"]) as? String +val octopusGithubDockerRegistry = System.getenv().getOrDefault("OCTOPUS_GITHUB_DOCKER_REGISTRY", project.properties["octopus.github.docker.registry"]) as? String + docker { springBootApplication { - baseImage.set("${rootProject.properties["docker.registry"]}/openjdk:11") - ports.set(listOf(8765, 8765)) - images.set(setOf("${rootProject.properties["publishing.docker.registry"]}/${project.name}:${project.version}")) + baseImage.set("$dockerRegistry/openjdk:11") + ports.set(listOf(8888, 8888)) + images.set(setOf("$octopusGithubDockerRegistry/octopusden/${project.name}:${project.version}")) } } +tasks.getByName("dockerBuildImage").doFirst { + validateDockerRegistryParams() +} + dependencies { implementation(platform("org.springframework.cloud:spring-cloud-dependencies:${project.property("spring-cloud.version")}")) implementation(platform("org.springframework.boot:spring-boot-dependencies:${project.property("spring-boot.version")}")) @@ -93,3 +100,16 @@ dependencies { implementation("org.springframework.boot:spring-boot-starter-actuator") implementation("io.micrometer:micrometer-registry-prometheus:1.10.4") } + +fun validateDockerRegistryParams() { + if (dockerRegistry.isNullOrBlank() || octopusGithubDockerRegistry.isNullOrBlank()) { + throw IllegalArgumentException( + "Start gradle build with" + + (if (dockerRegistry.isNullOrBlank()) " -Pdocker.registry=..." else "") + + (if (octopusGithubDockerRegistry.isNullOrBlank()) " -Poctopus.github.docker.registry=..." else "") + + " or set env variable(s):" + + (if (dockerRegistry.isNullOrBlank()) " DOCKER_REGISTRY" else "") + + (if (octopusGithubDockerRegistry.isNullOrBlank()) " OCTOPUS_GITHUB_DOCKER_REGISTRY" else "") + ) + } +} diff --git a/gradle.properties b/gradle.properties index c05bc34..f93879a 100644 --- a/gradle.properties +++ b/gradle.properties @@ -2,3 +2,4 @@ kotlin.version=1.6.21 spring-cloud.version=2021.0.0 spring-boot.version=2.6.1 docker.registry= +octopus.github.docker.registry=