Commit 017796862cd for woocommerce
commit 017796862cd9ec5a7d9be51949d0e792203581bb
Author: Jorge A. Torres <jorge.torres@automattic.com>
Date: Wed Jul 15 22:46:53 2026 +0100
Don't fail backport workflow when a reviewer isn't a repo collaborator (#66493)
diff --git a/.github/workflows/shared-cherry-pick.yml b/.github/workflows/shared-cherry-pick.yml
index 1cea419e4c3..2a0f59a4595 100644
--- a/.github/workflows/shared-cherry-pick.yml
+++ b/.github/workflows/shared-cherry-pick.yml
@@ -391,12 +391,24 @@ jobs:
body: prBody
});
- await github.rest.pulls.requestReviewers({
- owner: context.repo.owner,
- repo: context.repo.repo,
- pull_number: newPr.number,
- reviewers: [context.actor, originalPr.user.login]
- });
+ core.setOutput('pr_number', newPr.number.toString());
+ core.setOutput('original_author', originalPr.user?.login || '');
+ core.setOutput('original_merger', originalPr.merged_by?.login || '');
+ core.info(`Created PR #${newPr.number}: ${newPr.html_url}`);
+
+ // Request reviewers separately so an outside collaborator doesn't fail PR creation.
+ for (const reviewer of [context.actor, originalPr.user?.login].filter(Boolean)) {
+ try {
+ await github.rest.pulls.requestReviewers({
+ owner: context.repo.owner,
+ repo: context.repo.repo,
+ pull_number: newPr.number,
+ reviewers: [reviewer]
+ });
+ } catch (error) {
+ core.warning(`Failed to request review from ${reviewer}: ${error.message}`);
+ }
+ }
// Add label if there are conflicts
if (hasConflicts) {
@@ -413,12 +425,6 @@ jobs:
}
}
- core.setOutput('pr_number', newPr.number.toString());
- core.setOutput('original_author', originalPr.user?.login || '');
- core.setOutput('original_merger', originalPr.merged_by?.login || '');
-
- core.info(`Created PR #${newPr.number}: ${newPr.html_url}`);
-
} catch (error) {
core.setOutput('error_message', `Failed to create PR: ${error.message}`);
core.setFailed(`Failed to create PR: ${error.message}`);