From 7934dd7eba918de612a19e0b6bfc023a3134058a Mon Sep 17 00:00:00 2001 From: xiang <27800734@qq.com> Date: Fri, 9 May 2025 22:20:46 +0800 Subject: [PATCH 1/5] 1 --- .gitlab-ci.yml | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ab49ed0..44c8395 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,5 +1,5 @@ stages: - - get_version + - check - build - deploy @@ -13,6 +13,29 @@ variables: DockerImage: "${Ali_Docker_Registry}/${Namespace}/${PackageName}" + +check-merge-target: + stage: check + script: + - | + # 获取当前合并请求的目标分支 + TARGET_BRANCH="$CI_MERGE_REQUEST_TARGET_BRANCH_NAME" + SOURCE_BRANCH="$CI_COMMIT_BRANCH" + + # 定义允许合并的规则 + if [[ "$SOURCE_BRANCH" == "develop" && "$TARGET_BRANCH" != "release" ]]; then + echo "❌ 禁止将 develop 分支合并到 $TARGET_BRANCH" + exit 1 + elif [[ "$SOURCE_BRANCH" == "release" && "$TARGET_BRANCH" != "master" ]]; then + echo "❌ 禁止将 release 分支合并到 $TARGET_BRANCH" + exit 1 + else + echo "✅ 允许合并" + fi + only: + - merge_requests + + build_develop: stage: build script: From 88616cc9bcbbe938287efd3b500485be5be7b94f Mon Sep 17 00:00:00 2001 From: xiang <27800734@qq.com> Date: Fri, 9 May 2025 22:30:23 +0800 Subject: [PATCH 2/5] 1 --- .gitlab-ci.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 44c8395..f1aae03 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -33,8 +33,9 @@ check-merge-target: echo "✅ 允许合并" fi only: - - merge_requests - + - develop + - release + - master build_develop: stage: build From c2048fa41ea14c20a6a0d6691e2ae5d9715c0f5a Mon Sep 17 00:00:00 2001 From: xiang <27800734@qq.com> Date: Fri, 9 May 2025 22:37:14 +0800 Subject: [PATCH 3/5] 1 --- .gitlab-ci.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index f1aae03..1bd33d9 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -18,11 +18,11 @@ check-merge-target: stage: check script: - | - # 获取当前合并请求的目标分支 + ## 获取当前合并请求的目标分支 TARGET_BRANCH="$CI_MERGE_REQUEST_TARGET_BRANCH_NAME" SOURCE_BRANCH="$CI_COMMIT_BRANCH" - # 定义允许合并的规则 + ## 定义允许合并的规则 if [[ "$SOURCE_BRANCH" == "develop" && "$TARGET_BRANCH" != "release" ]]; then echo "❌ 禁止将 develop 分支合并到 $TARGET_BRANCH" exit 1 @@ -32,6 +32,7 @@ check-merge-target: else echo "✅ 允许合并" fi + rules: [if: $CI_PIPELINE_SOURCE == "merge_request_event"] only: - develop - release From a2c6d5f587cdf036a18205b78fe8aec392e9cb0f Mon Sep 17 00:00:00 2001 From: xiang <27800734@qq.com> Date: Fri, 9 May 2025 22:38:49 +0800 Subject: [PATCH 4/5] 1 --- .gitlab-ci.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 1bd33d9..e7551cc 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -32,7 +32,8 @@ check-merge-target: else echo "✅ 允许合并" fi - rules: [if: $CI_PIPELINE_SOURCE == "merge_request_event"] + rules: + - if: $CI_PIPELINE_SOURCE == "merge_request_event" only: - develop - release From e25d5507200b7e47f05abe0eda92b17cd37bac03 Mon Sep 17 00:00:00 2001 From: xiang <27800734@qq.com> Date: Fri, 9 May 2025 22:40:45 +0800 Subject: [PATCH 5/5] 1 --- .gitlab-ci.yml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e7551cc..7ab53e4 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -32,12 +32,8 @@ check-merge-target: else echo "✅ 允许合并" fi - rules: - - if: $CI_PIPELINE_SOURCE == "merge_request_event" only: - - develop - - release - - master + - merge_requests build_develop: stage: build