From 914912ac06573c79e3ac1368ce7c881cb6235aef Mon Sep 17 00:00:00 2001
From: Mohamed Menacer <mohamed.menacer@etu.univ-amu.fr>
Date: Mon, 10 Mar 2025 01:26:22 +0100
Subject: [PATCH] test10

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

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 3e1008c..79a88d7 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,32 +1,46 @@
-image: docker:26.1  # Utilisation de Docker stable
-
-variables:
-  DOCKER_HOST: unix:///var/run/docker.sock  # ✅ Utilisation du Docker du runner
-  PHP_VERSION: "8.2"
-  COMPOSER_CACHE_DIR: "$CI_PROJECT_DIR/var/cache/composer"
+image: docker:latest
 
+# Définition des stages
 stages:
   - build
   - test
+  - deploy
 
-before_script:
-  - apk add --no-cache bash git unzip curl docker-compose
-  - docker version  # ✅ Vérifie si Docker est bien accessible
-  - docker-compose version  # ✅ Vérifie si Docker Compose fonctionne
+# Variables d'environnement, si nécessaires pour Docker Compose
+variables:
+  DOCKER_DRIVER: overlay2
+  COMPOSE_FILE: "docker-compose.yml"
 
+# Job pour construire l'image Docker avec Docker Compose
 build:
   stage: build
+  services:
+    - docker:19.03.12-dind
   script:
-    - docker-compose up -d  # ✅ Démarre les services
-    - docker-compose exec php composer install --no-interaction --prefer-dist
-  artifacts:
-    paths:
-      - vendor/
+    - docker-compose -f $COMPOSE_FILE build
+    - docker-compose -f $COMPOSE_FILE up -d
 
+# Job de tests
 test:
   stage: test
+  services:
+    - docker:19.03.12-dind
+  script:
+    - docker-compose -f $COMPOSE_FILE exec php composer install
+    - docker-compose -f $COMPOSE_FILE exec php vendor/bin/phpunit
+  after_script:
+    - docker-compose -f $COMPOSE_FILE down
+
+# Job de déploiement
+deploy:
+  stage: deploy
+  script:
+    - echo "Déploiement de l'application..." # Remplacer par tes propres commandes de déploiement
+  when: manual # Pour déployer manuellement
+
+# Job pour nettoyer les containers
+cleanup:
+  stage: cleanup
   script:
-    - docker-compose exec php chmod +x bin/phpunit
-    - docker-compose exec php ./bin/phpunit
-  dependencies:
-    - build
+    - docker-compose -f $COMPOSE_FILE down
+  when: always
-- 
GitLab