From 2b5a72d8194a4d717338ad245ba042f4f1e5bdc2 Mon Sep 17 00:00:00 2001
From: "lucas.landrecy" <lucas.landrecy@etu.hesge.ch>
Date: Fri, 23 May 2025 16:25:51 +0000
Subject: [PATCH] Update .gitlab-ci.yml file

---
 .gitlab-ci.yml | 47 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 47 insertions(+)
 create mode 100644 .gitlab-ci.yml

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000..d862422
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,47 @@
+stages:
+  - build
+  - push
+  - deploy
+
+variables:
+  IMAGE_TAG: $CI_REGISTRY_IMAGE:$CI_COMMIT_SHORT_SHA
+
+# Docker build
+build_image:
+  stage: build
+  image: docker:24.0
+  services:
+    - docker:24.0-dind
+  script:
+    - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
+    - docker build -t $IMAGE_TAG .
+  only:
+    - main
+
+# Push to registry
+push_image:
+  stage: push
+  image: docker:24.0
+  services:
+    - docker:24.0-dind
+  script:
+    - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
+    - docker push $IMAGE_TAG
+  only:
+    - main
+  needs: [build_image]
+
+# Deploy to Kubernetes (optional, requires kubectl config)
+# deploy:
+#   stage: deploy
+#   image:
+#     name: bitnami/kubectl:latest
+#     entrypoint: [""]
+#   script:
+#     - echo "$KUBECONFIG" > kubeconfig.yaml
+#     - export KUBECONFIG=$CI_PROJECT_DIR/kubeconfig.yaml
+#     - kubectl config get-contexts
+#     - kubectl set image deployment/mon-deploiement mon-container=$IMAGE_TAG --namespace=mon-namespace
+#   only:
+#     - main
+#   needs: [push_image]
-- 
GitLab