From 1feca00e239a90dac9975fadd48803ace5792b4e Mon Sep 17 00:00:00 2001 From: Lorenzo Pagliai <lorenzo.pagliai@seco.com> Date: Thu, 30 Mar 2023 12:34:28 +0200 Subject: [PATCH] [CUSTOM] Add management of custom project CI/CD integration * Modify common.py script to hide integration comments on custom projects --- .gitlab-ci.yml | 30 ++++++++++++++++++++++++++++++ scripts/common.py | 15 ++++++++------- 2 files changed, 38 insertions(+), 7 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 9f8aa7e..1d906c9 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -108,6 +108,14 @@ executable: PROJECT_GROUP: ${CI_PROJECT_ROOT_NAMESPACE} MANIFEST_PROJECT: ${PROJECT_GROUP}/seco-manifest +.integrate-custom-1: + extends: .integrate + resource_group: integrate-custom-1 + variables: + PROJECT_GROUP: ${CUSTOM_1_GROUP} + MANIFEST_PROJECT: ${PROJECT_GROUP}/manifest + MANIFEST_BRANCH: ${CUSTOM_1_BRANCH} + # Jobs #integrate-ci-test:primary: @@ -130,6 +138,10 @@ integrate-yocto:kirkstone: variables: MANIFEST_BRANCH: kirkstone +integrate-yocto:custom-1: + extends: .integrate-yocto + variables: + MANIFEST_BRANCH: ${CUSTOM_1_BRANCH} # -------------------------------------------------------------------------------------- # Stage: build @@ -157,6 +169,12 @@ integrate-yocto:kirkstone: branch: "integrate/${CI_PROJECT_NAME}/${CI_COMMIT_REF_NAME}/into/${MANIFEST_BRANCH}" strategy: depend +.build-custom-1: + extends: .build + trigger: + project: ${CUSTOM_1_GROUP}/manifest + branch: "integrate/${CI_PROJECT_NAME}/${CI_COMMIT_REF_NAME}/into/${CUSTOM_1_BRANCH}" + strategy: depend # Jobs #build-ci-test:primary: @@ -183,6 +201,11 @@ build-yocto:kirkstone: variables: MANIFEST_BRANCH: kirkstone +build-yocto:custom-1: + extends: .build-custom-1 + needs: ["integrate-yocto:custom-1"] + variables: + MANIFEST_BRANCH: ${CUSTOM_1_BRANCH} # -------------------------------------------------------------------------------------- # Stage: merge @@ -209,3 +232,10 @@ merge-yocto: - .merge variables: MANIFEST_BRANCH: kirkstone + +merge-custom-1: + extends: + - .integrate-custom-1 + - .merge + variables: + MANIFEST_BRANCH: ${CUSTOM_1_BRANCH} \ No newline at end of file diff --git a/scripts/common.py b/scripts/common.py index e6e4f65..ff00747 100755 --- a/scripts/common.py +++ b/scripts/common.py @@ -130,13 +130,14 @@ def rebase_merge_request(project, merge_request): def crosslink_merge_requests(source_mr: MergeRequest, integration_mr: MergeRequest): """Insert cross-links in merge requests""" - integration_mr.notes.create( - {"body": "Source merge request: %s" % source_mr.web_url} - ) - source_mr.notes.create( - {"body": "Integration merge request: %s" % integration_mr.web_url} - ) - + if "custom" not in source_mr.web_url: + integration_mr.notes.create( + {"body": "Source merge request: %s" % source_mr.web_url} + ) + if "custom" not in integration_mr.web_url: + source_mr.notes.create( + {"body": "Integration merge request: %s" % integration_mr.web_url} + ) def wait_until_merge_status_is_set(project: Project, mr: MergeRequest): """Periodically query MR until GitLab has checked its merge status""" -- GitLab