@@ -22,10 +22,11 @@ module.exports = async ({ core, context, github }) => {
22
22
23
23
core . info ( `>>> PR fetched: ${ pr . number } ` ) ;
24
24
25
+ const prLabels = pr . labels . map ( ( label ) => label . name ) ;
26
+
25
27
// filter the target labels from the original PR
26
- const targetLabels = pr . labels
27
- . map ( ( label ) => label . name )
28
- . filter ( ( label ) => vBranchRegex . test ( label ) ) ;
28
+ const targetLabels = prLabels . filter ( ( label ) => vBranchRegex . test ( label ) ) ;
29
+ const otherLabels = prLabels . filter ( ( label ) => ! vBranchRegex . test ( label ) ) ;
29
30
30
31
if ( targetLabels . length === 0 ) {
31
32
// there was no target branch present
@@ -49,25 +50,6 @@ module.exports = async ({ core, context, github }) => {
49
50
const reviewers = pr . requested_reviewers . map ( ( reviewer ) => reviewer . login ) ;
50
51
core . info ( `>>> Reviewers from original PR: ${ reviewers . join ( ', ' ) } ` ) ;
51
52
52
- // the others will be removed from the PR
53
- core . info ( `>>> Removing target labels from the original PR` ) ;
54
- for ( const label of targetLabels ) {
55
- await github . rest . issues . removeLabel ( {
56
- owner,
57
- repo,
58
- issue_number : pullNumber ,
59
- name : label ,
60
- } ) ;
61
- }
62
-
63
- core . info ( `>>> Removing "needs cherry-pick" label from the original PR` ) ;
64
- await github . rest . issues . removeLabel ( {
65
- owner,
66
- repo,
67
- issue_number : pullNumber ,
68
- name : 'needs cherry-pick' ,
69
- } ) ;
70
-
71
53
core . info ( `>>> Creating explanatory comment on PR` ) ;
72
54
await github . rest . issues . createComment ( {
73
55
owner,
@@ -78,6 +60,7 @@ module.exports = async ({ core, context, github }) => {
78
60
79
61
// set the target branches as output to be used as an input for the next step
80
62
core . setOutput ( 'TARGET_BRANCHES' , targetLabels . join ( ',' ) ) ;
63
+ core . setOutput ( 'LABELS' , [ 'cherry-pick' , ...otherLabels ] . join ( ',' ) ) ;
81
64
core . setOutput ( 'REVIEWERS' , reviewers . join ( ',' ) ) ;
82
65
} catch ( error ) {
83
66
core . error ( `>>> Workflow failed with: ${ error . message } ` ) ;
0 commit comments