diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 5367313bb054b437e9604482ab24443576f89133..09a6d5ae73350aea194a72652323a12abaadb4d1 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,9 +1,26 @@ image: openjdk:8-jdk -develop: +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 + - java -jar saref-pipeline.jar develop -s && touch target/success + allow_failure: true except: - /^prerelease-v/ - /^release-v/ @@ -11,21 +28,50 @@ develop: when: always paths: - target/site - - target/report_output.xml + - target/success reports: junit: target/report_output.xml -release: +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 - only: + - java -jar saref-pipeline.jar release -t && touch target/success + allow_failure: true + only: - /^prerelease-v/ - - /^release-v/ artifacts: when: always paths: - target/site - - target/report_output.xml + - 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