From b766d30f25eab07852ba92dc91bc19850d6a1f72 Mon Sep 17 00:00:00 2001
From: Benedikt Steinbusch <b.steinbusch@fz-juelich.de>
Date: Thu, 21 Oct 2021 15:05:44 +0200
Subject: [PATCH] improve CI pipelines for branches

---
 .gitlab-ci.yml | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 7eabe15d6..072d0269e 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -6,14 +6,12 @@ workflow:
   rules:
     - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
       variables:
-        BASE_COMMIT: $CI_MERGE_REQUEST_DIFF_BASE_SHA
-        TIP_COMMIT: $CI_COMMIT_SHA
+        TARGET_BRANCH: $CI_MERGE_REQUEST_TARGET_BRANCH_NAME
     - if: '$CI_COMMIT_BRANCH && $CI_OPEN_MERGE_REQUESTS'
       when: never
     - if: '$CI_COMMIT_BRANCH'
       variables:
-        BASE_COMMIT: $CI_COMMIT_BEFORE_SHA
-        TIP_COMMIT: $CI_COMMIT_SHA
+        TARGET_BRANCH: 2022
 
 check_style:
   script:
@@ -31,6 +29,8 @@ check_style:
     - done
     - export EASYBUILD_MODULE_NAMING_SCHEME="FlexibleCustomHierarchicalMNS"
     - faulty=""
+    - export TIP_COMMIT=$CI_COMMIT_SHA
+    - export BASE_COMMIT=$(git merge-base "$TIP_COMMIT" "origin/$TARGET_BRANCH")
     - printf "Checking changes between base %s (%s) and tip %s (%s)\n" "$BASE_COMMIT" "$(git describe --all --exclude pipeline/* $BASE_COMMIT 2> /dev/null)" "$TIP_COMMIT" "$(git describe --all --exclude pipeline/* $TIP_COMMIT 2> /dev/null)"
     - eb_list=$(git diff-tree --no-commit-id -r "$BASE_COMMIT" "$TIP_COMMIT" | awk '$5 ~ /^M|^A/ && $6 ~ /eb$/ {print($6)}')
     - echo "List of files to be checked $eb_list"
-- 
GitLab