From 89cb5b42a27ef8eb81679ccef21a1637c14031fe Mon Sep 17 00:00:00 2001
From: SofianeLasri <alasri250@gmail.com>
Date: Mon, 4 Nov 2024 15:30:01 +0100
Subject: [PATCH] feat(ci): add initial GitLab CI configuration for build and
 test

Add a .gitlab-ci.yml file to configure CI stages for building and testing the project. Set up caching for Maven dependencies and define build and test stages using Maven with OpenJDK 17.
---
 .gitlab-ci.yml | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)
 create mode 100644 .gitlab-ci.yml

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000..d04d782
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,28 @@
+stages:
+  - build
+  - test
+
+variables:
+  MAVEN_OPTS: "-Dmaven.repo.local=$CI_PROJECT_DIR/.m2/repository"
+
+cache:
+  paths:
+    - .m2/repository
+
+before_script:
+  - export MAVEN_CLI_OPTS="--batch-mode --errors --fail-at-end --show-version"
+
+build:
+  stage: build
+  image: maven:3.8.5-openjdk-17
+  script:
+    - mvn $MAVEN_CLI_OPTS clean install
+  artifacts:
+    paths:
+      - target/*.jar
+
+test:
+  stage: test
+  image: maven:3.8.5-openjdk-17
+  script:
+    - mvn $MAVEN_CLI_OPTS test
\ No newline at end of file
-- 
GitLab