From 3c6ff22dbd4a80f1c416785bf8c8e47980cf71f4 Mon Sep 17 00:00:00 2001
From: Mohamed Menacer <mohamed.menacer@etu.univ-amu.fr>
Date: Wed, 12 Mar 2025 10:58:26 +0100
Subject: [PATCH] fnl version

---
 .gitlab-ci.yml                 | 45 ++++++++++++++++++++++++++++++++++
 .gitlab-ci.yml:Zone.Identifier |  0
 2 files changed, 45 insertions(+)
 create mode 100644 .gitlab-ci.yml
 create mode 100644 .gitlab-ci.yml:Zone.Identifier

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000..7bc7fc1
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,45 @@
+stages:
+  - build
+  - test
+  - deploy
+
+variables:
+  DOCKER_IMAGE: "registry.gitlab.com/votre-projet/symfony-app"
+  PHP_IMAGE: "php:8.2-cli"
+
+before_script:
+  - apt-get update && apt-get install -y unzip git curl
+
+# Étape 1 : Build de l'image Docker
+build:
+  stage: build
+  image: docker:latest
+  services:
+    - docker:dind
+  script:
+    - docker build -t $DOCKER_IMAGE .
+    - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
+    - docker push $DOCKER_IMAGE
+
+# Étape 2 : Exécution des tests Symfony (PHPUnit)
+test:
+  stage: test
+  image: $PHP_IMAGE
+  services:
+    - mysql:latest
+  script:
+    - docker-compose up -d database mailer
+    - composer install
+    - php bin/phpunit
+  only:
+    - main  # Exécute les tests uniquement sur la branche principale
+
+# Étape 3 : Déploiement (optionnel)
+deploy:
+  stage: deploy
+  image: alpine:latest
+  script:
+    - echo "Déploiement en cours..."
+    - ssh root@mon-serveur "docker pull $DOCKER_IMAGE && docker-compose up -d"
+  only:
+    - main  # Déploie seulement si c'est sur la branche main
diff --git a/.gitlab-ci.yml:Zone.Identifier b/.gitlab-ci.yml:Zone.Identifier
new file mode 100644
index 0000000..e69de29
-- 
GitLab