From a983b3d8ed1446be79e1fa715cbe30f0ebb93633 Mon Sep 17 00:00:00 2001
From: schnarkus <markus.simianer@yahoo.de>
Date: Sun, 25 Aug 2024 11:21:58 +0200
Subject: [PATCH] test

---
 .gitlab-ci.yml | 50 +++++++++++++++++++-------------------------------
 1 file changed, 19 insertions(+), 31 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 3da80b0..0156bca 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -7,13 +7,10 @@ workflow:
 
 variables:
   version: 0.0.$CI_PIPELINE_IID
-  environment_tag: |
-    if [ "$CI_COMMIT_BRANCH" == "prod" ]; then echo "prod"; else echo "dev"; fi
 
 stages:
   - test
   - build
-  - tag
   - publish
 
 test_job:
@@ -26,40 +23,20 @@ test_job:
 build_job:
   stage: build
   rules:
-    - if: $CI_COMMIT_REF_NAME == "prod" || $CI_COMMIT_REF_NAME == "dev"
+    - if: $CI_COMMIT_REF_NAME =~ /prod|dev/
       when: always
-  image: docker:latest
-  services:
-    - docker:dind
-  tags:
-    - docker-privileged
-  script:
-    - docker build -t $CI_REGISTRY_IMAGE:$version -f Containerfile .
+  image: public.ecr.aws/docker/library/golang:1.21
+  script: |
+    GOARCH=amd64 GOOS=linux CGO_ENABLED=0 go build -o artifact.bin ./*.go
   artifacts:
     paths:
       - artifact.bin
-    expire_in: 30 min
-
-tag_job:
-  stage: tag
-  rules:
-    - if: $CI_COMMIT_REF_NAME == "prod" || $CI_COMMIT_REF_NAME == "dev"
-      when: always
-  image: docker:latest
-  services:
-    - docker:dind
-  tags:
-    - docker-privileged
-  dependencies:
-    - build_job
-  script:
-    - docker tag $CI_REGISTRY_IMAGE:$version $CI_REGISTRY_IMAGE:latest
-    - docker tag $CI_REGISTRY_IMAGE:$version $CI_REGISTRY_IMAGE:$environment_tag
+    expire_in: 5 min
 
 publish_job:
   stage: publish
   rules:
-    - if: $CI_COMMIT_REF_NAME == "prod" || $CI_COMMIT_REF_NAME == "dev"
+    - if: $CI_COMMIT_REF_NAME =~ /prod|dev/
       when: always
   image: docker:latest
   services:
@@ -67,11 +44,22 @@ publish_job:
   tags:
     - docker-privileged
   dependencies:
-    - tag_job
+    - build_job
   script:
+    - docker build -t $CI_REGISTRY_IMAGE:$version -f Containerfile .
+    - docker tag $CI_REGISTRY_IMAGE:$version $CI_REGISTRY_IMAGE:latest
+    - if [[ "$CI_COMMIT_BRANCH" == "prod" ]]; then
+      docker tag $CI_REGISTRY_IMAGE:$version $CI_REGISTRY_IMAGE:prod;
+      elif [[ "$CI_COMMIT_BRANCH" == "dev" ]]; then
+      docker tag $CI_REGISTRY_IMAGE:$version $CI_REGISTRY_IMAGE:dev;
+      fi
     - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
     - docker push $CI_REGISTRY_IMAGE:$version
     - docker push $CI_REGISTRY_IMAGE:latest
-    - docker push $CI_REGISTRY_IMAGE:$environment_tag
+    - if [[ "$CI_COMMIT_BRANCH" == "prod" ]]; then
+      docker push $CI_REGISTRY_IMAGE:prod;
+      elif [[ "$CI_COMMIT_BRANCH" == "dev" ]]; then
+      docker push $CI_REGISTRY_IMAGE:dev;
+      fi
   after_script:
     - docker logout $CI_REGISTRY
-- 
GitLab