diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000000000000000000000000000000000000..09a6d5ae73350aea194a72652323a12abaadb4d1
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,77 @@
+image: openjdk:8-jdk
+
+variables:
+    SAREF_DEV_KEY: <my_private_key>
+    SAREF_PORTAL_KEY: <my_private_key>
+
+before_script:
+  - eval $(ssh-agent -s)
+  - ssh-add <(echo "$SAREF_DEV_KEY")
+  - mkdir -p ~/.ssh
+  - '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config'
+
+stages:
+  - test
+  - build
+  - deploy
+
+test-develop:
+  stage: test
+  script:
+    - curl -L -o saref-pipeline.jar "https://gitlab.emse.fr/saref/saref-pipeline/-/jobs/artifacts/master/raw/target/saref-pipeline.jar?job=build"
+    - java -jar saref-pipeline.jar develop -s && touch target/success
+  allow_failure: true
+  except:
+    - /^prerelease-v/
+    - /^release-v/
+  artifacts:
+    when: always
+    paths:
+      - target/site
+      - target/success
+    reports:
+      junit: target/report_output.xml
+
+test-prerelease:
+  stage: test
+  script:
+    - curl -L -o saref-pipeline.jar "https://gitlab.emse.fr/saref/saref-pipeline/-/jobs/artifacts/master/raw/target/saref-pipeline.jar?job=build"
+    - java -jar saref-pipeline.jar release -t && touch target/success
+  allow_failure: true
+  only:
+    - /^prerelease-v/
+  artifacts:
+    when: always
+    paths:
+      - target/site
+      - target/success
+    reports:
+      junit: target/report_output.xml
+
+deploy-report:
+  stage: deploy
+  script:
+    - scp -pr '-P 29419' target/site saref-dev@saref.etsi.org:~/snapshot/$CI_PIPELINE_ID
+    - echo "SAREF pipeline report  https://saref.etsi.org/snapshot/$CI_PIPELINE_ID/report.html" 
+    - exit $(test -f target/success) $?
+  except:
+    - /^release-v/
+
+test-release:
+  stage: test
+  script:
+    - curl -L -o saref-pipeline.jar "https://gitlab.emse.fr/saref/saref-pipeline/-/jobs/artifacts/master/raw/target/saref-pipeline.jar?job=build"
+    - java -jar saref-pipeline.jar release -t
+  only:
+    - /^release-v/
+
+trigger-release:
+  stage: deploy
+  only:
+    - /^release-v/
+  variables:
+    SAREF_DEV_KEY: $SAREF_DEV_KEY
+    SAREF_PORTAL_KEY: $SAREF_PORTAL_KEY
+  trigger:
+    project: saref/saref-portal
+    branch: master