From 1f2531a664322c800a556d87b83e27e81db72503 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Mon, 3 May 2021 16:09:10 -0400 Subject: [PATCH] ci: allow cherry-picking a manual backport to other release branches If an automatic backport fails to more than one release branch we need to crate a PR to backport it. So far we've had to create a backport PR for each target release branch. With this change, we may be able to create only a single PR, and then run the backport automation to cherry-pick it into other release branches. The idea is that if a change introduced in version n-1 caused a conflict, and there are no other changes, then the backport automation should be able to use the same commit for version n-2 and n-3. --- .circleci/config.yml | 1 + .circleci/scripts/cherry-picker.sh | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 444434abe..c7dadf69b 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1123,6 +1123,7 @@ workflows: branches: only: - master + - /release\/\d+\.\d+\.x$/ load-test: when: << pipeline.parameters.trigger-load-test >> jobs: diff --git a/.circleci/scripts/cherry-picker.sh b/.circleci/scripts/cherry-picker.sh index d0ef5a7f0..8a997ac45 100755 --- a/.circleci/scripts/cherry-picker.sh +++ b/.circleci/scripts/cherry-picker.sh @@ -165,11 +165,12 @@ if echo "$resp" | jq -e '.items[].labels[] | select(.name | contains("docs-cherr fi fi +git config --local user.email "github-team-consul-core@hashicorp.com" +git config --local user.name "hc-github-team-consul-core" + backport_failures=0 # loop through all labels on the PR for label in $labels; do - git config --local user.email "github-team-consul-core@hashicorp.com" - git config --local user.name "hc-github-team-consul-core" status "checking label: $label" # if the label matches docs-cherrypick, it will attempt to cherry-pick to stable-website if [[ $label =~ docs-cherrypick ]]; then