diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index d829f43c395ff16f15b59fc82201f54e0e1d430f..bb3f0090ea99105f3fbc7303a12d527550fc00fb 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -36,11 +36,9 @@ fmt_and_clippy: build_debug: extends: .env rules: - - if: $CI_COMMIT_REF_NAME =~ /^wip*$/ - when: manual - if: $CI_COMMIT_TAG when: never - - if: '$CI_MERGE_REQUEST_ID ||$CI_COMMIT_BRANCH == "master" || $CI_COMMIT_BRANCH =~ /^release/' + - if: '$CI_PIPELINE_SOURCE == "merge_request_event" || $CI_COMMIT_BRANCH == "master"' - when: manual stage: build script: @@ -51,14 +49,28 @@ build_debug: paths: - build/ -tests: +build_release: + extends: .env + rules: + - if: '$CI_COMMIT_TAG || $CI_COMMIT_BRANCH =~ /^release/' + - when: never + stage: build + script: + - cargo build --release + - mkdir build + - mv target/release/duniter build/duniter + artifacts: + paths: + - build/ + +tests_debug: extends: .env rules: - if: $CI_COMMIT_REF_NAME =~ /^wip*$/ when: manual - if: $CI_COMMIT_TAG when: never - - if: '$CI_MERGE_REQUEST_ID ||$CI_COMMIT_BRANCH == "master" || $CI_COMMIT_BRANCH =~ /^release/' + - if: '$CI_MERGE_REQUEST_ID || $CI_COMMIT_BRANCH == "master"' - when: manual stage: tests variables: @@ -69,6 +81,20 @@ tests: dependencies: - build_debug +tests_release: + extends: .env + rules: + - if: '$CI_COMMIT_TAG || $CI_COMMIT_BRANCH =~ /^release/' + - when: never + stage: tests + variables: + DUNITER_BINARY_PATH: "../build/duniter" + DUNITER_INTEGRATION_TESTS_SPAWN_NODE_DURATION: "10" + script: + - cargo test + dependencies: + - build_release + .docker-build-app-image: stage: deploy image: docker:18.06