Introduit un include pour augmenter la lisibilité.

This commit is contained in:
Simon Pistache 2023-05-15 22:50:45 +02:00
parent 8b72846275
commit c47f7d4ae8
2 changed files with 40 additions and 39 deletions

View File

@ -1,3 +1,5 @@
include: .gitlab/valid_set.yml
stages: stages:
- Manifest - Manifest
- Test - Test
@ -11,7 +13,7 @@ variables:
PACKAGE_REGISTRY_URL: "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/${PACKAGE_NAME}/${RELEASE_VERSION}" PACKAGE_REGISTRY_URL: "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/${PACKAGE_NAME}/${RELEASE_VERSION}"
# Jobs from here run on Merge Requests as prerequisite for merging. # Jobs from here run on Merge Requests as prerequisite for merging.
.manifest-job: &manifest .manifest-job:
stage: Manifest stage: Manifest
image: node:latest image: node:latest
rules: rules:
@ -35,14 +37,14 @@ variables:
manifest-job/valid_set: manifest-job/valid_set:
variables: variables:
PACKAGE_NAME: "valid_set" PACKAGE_NAME: "valid_set"
<<: *manifest extends: manifest-job
manifest-job/missing_tag_set: manifest-job/missing_tag_set:
variables: variables:
PACKAGE_NAME: "missing_tag_set" PACKAGE_NAME: "missing_tag_set"
<<: *manifest extends: manifest-job
.test-images-job: &test-images .test-job:
stage: Test stage: Test
image: python:latest image: python:latest
rules: rules:
@ -55,22 +57,15 @@ manifest-job/missing_tag_set:
- python -m pytest src/test_images.py --tb=line -rA --color=yes - python -m pytest src/test_images.py --tb=line -rA --color=yes
allow_failure: true allow_failure: true
test-images-job/valid_set:
needs:
- manifest-job/valid_set
variables:
PACKAGE_NAME: "valid_set"
<<: *test-images
test-images-job/missing_tag_set: test-images-job/missing_tag_set:
needs: needs:
- manifest-job/missing_tag_set - manifest-job/missing_tag_set
variables: variables:
PACKAGE_NAME: "missing_tag_set" PACKAGE_NAME: "missing_tag_set"
<<: *test-images extends: test-job
# Jobs from here run Merged_results or Push/Merge Commits to the main branch. Tag is created on release so no run with tag creation # Jobs from here run Merged_results or Push/Merge Commits to the main branch. Tag is created on release so no run with tag creation
.bundle-job: &bundle .bundle-job:
stage: Bundle stage: Bundle
image: javieraviles/zip:latest image: javieraviles/zip:latest
rules: rules:
@ -88,21 +83,14 @@ test-images-job/missing_tag_set:
when: on_success when: on_success
expire_in: "1 hour" expire_in: "1 hour"
bundle-job/valid_set:
needs:
- manifest-job/valid_set
variables:
PACKAGE_NAME: "valid_set"
<<: *bundle
bundle-job/missing_tag_set: bundle-job/missing_tag_set:
needs: needs:
- manifest-job/missing_tag_set - manifest-job/missing_tag_set
variables: variables:
PACKAGE_NAME: "missing_tag_set" PACKAGE_NAME: "missing_tag_set"
<<: *bundle extends: bundle-job
.upload-job: &upload .upload-job:
stage: Distribute stage: Distribute
image: curlimages/curl:latest image: curlimages/curl:latest
rules: rules:
@ -117,21 +105,14 @@ bundle-job/missing_tag_set:
--header "JOB-TOKEN: ${CI_JOB_TOKEN}" \ --header "JOB-TOKEN: ${CI_JOB_TOKEN}" \
--upload-file ${PACKAGE_NAME}.zip "${PACKAGE_REGISTRY_URL}/${PACKAGE_NAME}.zip?select=package_file" --upload-file ${PACKAGE_NAME}.zip "${PACKAGE_REGISTRY_URL}/${PACKAGE_NAME}.zip?select=package_file"
upload-job/valid_set:
needs:
- bundle-job/valid_set
variables:
PACKAGE_NAME: "valid_set"
<<: *upload
upload-job/missing_tag_set: upload-job/missing_tag_set:
needs: needs:
- bundle-job/missing_tag_set - bundle-job/missing_tag_set
variables: variables:
PACKAGE_NAME: "missing_tag_set" PACKAGE_NAME: "missing_tag_set"
<<: *upload extends: upload-job
.release-job: &release .release-job:
stage: Release stage: Release
image: registry.gitlab.com/gitlab-org/release-cli:latest image: registry.gitlab.com/gitlab-org/release-cli:latest
rules: rules:
@ -152,16 +133,9 @@ upload-job/missing_tag_set:
- name: ${PACKAGE_NAME} - name: ${PACKAGE_NAME}
url: "${PACKAGE_REGISTRY_URL}/${PACKAGE_NAME}.zip" url: "${PACKAGE_REGISTRY_URL}/${PACKAGE_NAME}.zip"
release-job/valid_set:
needs:
- upload-job/valid_set
variables:
PACKAGE_NAME: "valid_set"
<<: *release
release-job/missing_tag_set: release-job/missing_tag_set:
needs: needs:
- upload-job/missing_tag_set - upload-job/missing_tag_set
variables: variables:
PACKAGE_NAME: "missing_tag_set" PACKAGE_NAME: "missing_tag_set"
<<: *release extends: release-job

27
.gitlab/valid_set.yml Normal file
View File

@ -0,0 +1,27 @@
test-images-job/valid_set:
needs:
- manifest-job/valid_set
variables:
PACKAGE_NAME: "valid_set"
extends: test-job
bundle-job/valid_set:
needs:
- manifest-job/valid_set
variables:
PACKAGE_NAME: "valid_set"
extends: bundle-job
upload-job/valid_set:
needs:
- bundle-job/valid_set
variables:
PACKAGE_NAME: "valid_set"
extends: upload-job
release-job/valid_set:
needs:
- upload-job/valid_set
variables:
PACKAGE_NAME: "valid_set"
extends: release-job