From ac86f30540e1e524884d8bd609a938f39b2b833b Mon Sep 17 00:00:00 2001 From: Arnaud DEMARCQ Date: Wed, 6 Nov 2024 14:35:51 +0100 Subject: [PATCH 1/5] =?UTF-8?q?Refactors=20docker=5Fbuild=20to=20be=20auto?= =?UTF-8?q?nomous=C3=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docker_build/.env | 1 + docker_build/docker-compose.yml | 9 ++++---- docker_build/prometheus.db.exporter.docker | 24 ++++++++++++++++------ 3 files changed, 24 insertions(+), 10 deletions(-) create mode 100644 docker_build/.env diff --git a/docker_build/.env b/docker_build/.env new file mode 100644 index 0000000..2135608 --- /dev/null +++ b/docker_build/.env @@ -0,0 +1 @@ +PROJECT_VERSION=0.0.0 diff --git a/docker_build/docker-compose.yml b/docker_build/docker-compose.yml index a5bf8eb..c01cce1 100644 --- a/docker_build/docker-compose.yml +++ b/docker_build/docker-compose.yml @@ -1,7 +1,8 @@ services: prometheusdbexporter: + image: simpledotorg/prometheusdbexporter:${PROJECT_VERSION} build: - context: . - dockerfile: prometheus.db.exporter.docker - image: simpledotorg/prometheusdbexporter:${project.version} - \ No newline at end of file + context: .. + dockerfile: ./docker_build/prometheus.db.exporter.docker + args: + PROJECT_VERSION: ${PROJECT_VERSION} diff --git a/docker_build/prometheus.db.exporter.docker b/docker_build/prometheus.db.exporter.docker index 4e12a18..9132b99 100644 --- a/docker_build/prometheus.db.exporter.docker +++ b/docker_build/prometheus.db.exporter.docker @@ -1,11 +1,23 @@ from tomcat:11.0-jdk21 -ENV JAVA_OPTS " -Dlogback.ContextSelector=JNDI " +ARG PROJECT_VERSION -COPY ./PrometheusDatabaseExporterWar-${project.version}.war /app/rtsl/prom_db_exporter/ -COPY ./prometheus_db_exporter/*.properties /app/rtsl/prom_db_exporter/ -COPY ./prometheus_db_exporter/logback.xml /app/rtsl/prom_db_exporter/ +# +# Files and Folders +# +COPY ./Webapps/PrometheusDatabaseExporterWar/target/PrometheusDatabaseExporterWar-*.war /app/rtsl/prom_db_exporter/ +COPY ./docker_content/prometheus_db_exporter/*.properties /app/rtsl/prom_db_exporter/ +COPY ./docker_content/prometheus_db_exporter/logback.xml /app/rtsl/prom_db_exporter/ +COPY ./docker_content/prometheus_db_exporter/PrometheusDbExporter.xml /usr/local/tomcat/conf/Catalina/localhost/ +RUN mkdir /app/rtsl/prom_db_exporter/sources -COPY ./prometheus_db_exporter/PrometheusDbExporter.xml /usr/local/tomcat/conf/Catalina/localhost/ +# +# System needs to be as up to date as possible +# +#RUN apt-get update ; apt-get upgrade ; apt-get clean + +ENV JAVA_OPTS " -Dlogback.ContextSelector=JNDI " + +## Templates the config files based on the ARGS +RUN sed -i "s/\${project.version}/${PROJECT_VERSION}/g" /usr/local/tomcat/conf/Catalina/localhost/PrometheusDbExporter.xml -RUN mkdir /app/rtsl/prom_db_exporter/sources From 8df3c228f4b6bc586b5525401b4ebeea266d7f00 Mon Sep 17 00:00:00 2001 From: Arnaud DEMARCQ Date: Wed, 6 Nov 2024 14:40:48 +0100 Subject: [PATCH 2/5] Removes docker build from maven main pom --- pom.xml | 1 - 1 file changed, 1 deletion(-) diff --git a/pom.xml b/pom.xml index 92fd1c4..98bc9d3 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,6 @@ CommonUtils Webapps packager - docker_build UTF-8 From 7c6209473076ba2d24fdad262878a8d5b2fef3e2 Mon Sep 17 00:00:00 2001 From: Arnaud DEMARCQ Date: Wed, 6 Nov 2024 14:49:50 +0100 Subject: [PATCH 3/5] Modifies build to build images independently --- .github/workflows/build.yml | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 988997c..6bb8723 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -24,9 +24,7 @@ jobs: - uses: stCarolas/setup-maven@v4.5 with: maven-version: 3.9.6 - - name: docker-compose workaround - run: echo "docker compose \"\$@\"" > $HOME/docker-compose ; chmod 777 $HOME/docker-compose ; echo "$HOME/" >> $GITHUB_PATH - - name: Clean branch name + - name: Set Environment Variables run: | BRANCH_NAME=${{ github.ref_name }} CLEAN_BRANCH_NAME=$(echo $BRANCH_NAME | sed 's/[\/_]/-/g') @@ -34,8 +32,12 @@ jobs: echo CLEAN_BRANCH_NAME=$CLEAN_BRANCH_NAME >> $GITHUB_ENV - name: Sets up version run: mvn versions:set -DnewVersion=${{ env.CLEAN_BRANCH_NAME }}.${{github.run_number}} - - name: Builds Artifacts and Images + - name: Builds Artifacts run: mvn clean install + - name: Builds Images + run: | + export PROJECT_VERSION=${{ env.CLEAN_BRANCH_NAME }}.${{github.run_number}} + docker compose build - name: Publish Images run: docker push simpledotorg/prometheusdbexporter:${{ env.CLEAN_BRANCH_NAME }}.${{github.run_number}} - name: Archive Dhis2TestTool jar file From 35d886a6b3f40032c54343d03485a2a384a4d094 Mon Sep 17 00:00:00 2001 From: Arnaud DEMARCQ Date: Wed, 6 Nov 2024 14:52:05 +0100 Subject: [PATCH 4/5] Fixes path error --- .github/workflows/build.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 6bb8723..57ac99d 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -35,6 +35,7 @@ jobs: - name: Builds Artifacts run: mvn clean install - name: Builds Images + working-directory: ./docker_build run: | export PROJECT_VERSION=${{ env.CLEAN_BRANCH_NAME }}.${{github.run_number}} docker compose build From 0c96840882adecb45179fce79acafadfdd4302da Mon Sep 17 00:00:00 2001 From: Arnaud DEMARCQ Date: Wed, 6 Nov 2024 14:58:42 +0100 Subject: [PATCH 5/5] Docker file cleaning --- docker_run/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker_run/docker-compose.yml b/docker_run/docker-compose.yml index 0518701..0305e37 100644 --- a/docker_run/docker-compose.yml +++ b/docker_run/docker-compose.yml @@ -16,7 +16,7 @@ services: retries: 5 prometheusdbexporter: - image: simpledotorg/prometheusdbexporter:0.0.0 + image: simpledotorg/prometheusdbexporter:ademarcq-13779.236 ports: - 127.0.0.1:8080:8080 environment: