From 2d488404d477fb751ca512f6b313653f09de0200 Mon Sep 17 00:00:00 2001
From: Geoffrey Arthaud <geoffrey.arthaud@developpement-durable.gouv.fr>
Date: Tue, 27 Feb 2024 23:58:20 +0100
Subject: [PATCH] Add Docker release from binary release

---
 .gitlab-ci.yml | 17 ++++++++++++++++-
 Dockerfile     | 28 ++--------------------------
 2 files changed, 18 insertions(+), 27 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 8a13499..efedc6e 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,6 +1,10 @@
 stages:
   - build_test
   - release
+  - deploy
+
+include:
+  - remote: 'https://api.r2devops.io/job/r/gitlab/r2devops/hub/docker_build@latest.yaml'
 
 check-format:
   stage: build_test
@@ -70,4 +74,15 @@ release-macos-x86:
     LDD_CMD: otool -L
   tags:
     - macos_mx
-  retry: 1 # First-time OpenSSL build will fail rust build
\ No newline at end of file
+  retry: 1 # First-time OpenSSL build will fail rust build
+
+docker_build:
+  stage: deploy
+  variables:
+    COMMIT_CREATE_LATEST: "true"
+    IMAGE_TAG: "v1.19.2-debug"
+  retry: 2
+  dependencies:
+    - release-linux
+  tags:
+    - buildonly
\ No newline at end of file
diff --git a/Dockerfile b/Dockerfile
index cac1487..41876be 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,26 +1,2 @@
-FROM rust:alpine as cargo-build
-
-RUN apk update
-RUN apk add --no-cache openssl-dev musl-dev
-
-WORKDIR /home/rust/src
-COPY ./Cargo.toml ./Cargo.toml
-COPY ./Cargo.lock ./Cargo.lock
-COPY ./src ./src
-COPY ./i18n ./i18n
-COPY ./i18n.toml ./i18n.toml
-RUN rustup target add x86_64-unknown-linux-musl
-
-FROM cargo-build as release-dev
-RUN cargo build --target x86_64-unknown-linux-musl
-RUN cargo test
-
-FROM cargo-build as release-prod
-RUN cargo build --target x86_64-unknown-linux-musl --release
-
-FROM alpine:latest as image-dev
-COPY --from=release-dev /home/rust/src/target/x86_64-unknown-linux-musl/debug/gitlab-project-doctor /usr/local/bin
-RUN gitlab-project-doctor --help
-
-FROM alpine:latest as image-prod
-COPY --from=release-prod /home/rust/src/target/x86_64-unknown-linux-musl/release/gitlab-project-doctor /usr/local/bin
+FROM alpine:latest
+COPY ./target/x86_64-unknown-linux-musl/release/gitlab-project-doctor /usr/local/bin
-- 
GitLab