From db7d54e944e0280fdf885e63fec538595ab250bb Mon Sep 17 00:00:00 2001 From: Geoffrey Arthaud <geoffrey.arthaud@developpement-durable.gouv.fr> Date: Tue, 16 Jul 2024 23:02:32 +0200 Subject: [PATCH] Separate deps fetching and linting + remove useless tasks --- .gitlab-ci.yml | 32 ++++++++++++++++++++++---------- 1 file changed, 22 insertions(+), 10 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c509ca8..723c0d4 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -20,7 +20,7 @@ default: policy: pull stages: - - deps_and_lint + - prepare - build_test - release - deploy @@ -67,19 +67,24 @@ release-gpd-image: - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH - if: $CI_COMMIT_TAG -check-format: - stage: deps_and_lint +cache-dependencies: + stage: prepare image: ${RUST_IMAGE}:${RUST_VERSION} script: - cargo fetch - - cargo fmt --all -- --check - - cargo clippy -- -D warnings cache: key: rust-deps paths: - .cargo policy: pull-push +check-format: + stage: build_test + image: ${RUST_IMAGE}:${RUST_VERSION} + script: + - cargo fmt --all -- --check + - cargo clippy -- -D warnings + test-rust-current: stage: build_test image: ${RUST_IMAGE}:${RUST_VERSION} @@ -89,11 +94,16 @@ test-rust-current: - cargo run -- $TEST_OPTIONS --token $TEST_GL_TOKEN - cargo run -- $CLEAN_OPTIONS - cargo run -- $CLEAN_OPTIONS --token $TEST_GL_TOKEN + rules: + - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH + - if: $CI_PIPELINE_SOURCE == 'merge_request_event' test-rust-nightly: extends: test-rust-current image: rustlang/rust:nightly allow_failure: true + rules: + - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH .rust-release: image: ${RUST_IMAGE}:${RUST_VERSION} @@ -108,11 +118,6 @@ test-rust-nightly: - export VERSION=${CI_COMMIT_TAG:-latest} - echo "VERSION=${VERSION}" > release.env - 'if [ -z "$DEBUG" ]; then curl --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file $TARGET "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/$TARGET_ARCH/${VERSION}/$APP_NAME"; fi' - artifacts: - paths: - - $TARGET - reports: - dotenv: release.env allow_failure: true rules: - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH @@ -130,6 +135,11 @@ release-linux: before_script: - apt update -y - apt install -y musl-dev musl-tools build-essential + artifacts: + paths: + - $TARGET + reports: + dotenv: release.env release-macos-silicon: extends: .rust-release @@ -162,6 +172,8 @@ release-windows: before_script: - apt-get update - apt-get install -y lld gcc-mingw-w64-x86-64 + rules: + - if: $CI_COMMIT_TAG test-release-docker: stage: deploy_test -- GitLab