@@ -47,35 +47,30 @@ func main() {
4747 }
4848
4949 var (
50- ctx = context .Background ()
51- token = os .Getenv ("GITHUB_TOKEN" )
52- client = github .NewTokenClient (ctx , token )
53- inputs = GetInputs ()
54- payload = & github.PullRequestTargetEvent {}
50+ ctx = context .Background ()
51+ token = os .Getenv ("GITHUB_TOKEN" )
52+ client = github .NewTokenClient (ctx , token )
53+ inputs = GetInputs ()
5554 )
5655
5756 if token == "" {
5857 panic ("token can not be empty" )
5958 }
6059
61- if err := UnmarshalEventData (ghctx , & payload ); err != nil {
62- log .Error ("error reading github payload" , "error" , err )
60+ prInfo , err := GetBackportPrInfo (ctx , client , ghctx )
61+ if err != nil {
62+ log .Error ("error getting PR info" , "error" , err )
6363 panic (err )
6464 }
6565
66- var (
67- owner = payload .GetRepo ().GetOwner ().GetLogin ()
68- repo = payload .GetRepo ().GetName ()
69- )
70-
71- log = log .With ("pull_request" , payload .GetNumber ())
72- branches , err := ghutil .GetReleaseBranches (ctx , client .Repositories , owner , repo )
66+ log = log .With ("pull_request" , prInfo .Pr .Number )
67+ branches , err := ghutil .GetReleaseBranches (ctx , client .Repositories , prInfo .RepoOwner , prInfo .RepoName )
7368 if err != nil {
7469 log .Error ("error getting branches" , "error" , err )
7570 panic (err )
7671 }
7772
78- targets , err := BackportTargetsFromPayload (branches , payload )
73+ targets , err := BackportTargetsFromPayload (branches , prInfo )
7974 if err != nil {
8075 if errors .Is (err , ErrorNotMerged ) {
8176 log .Warn ("pull request is not merged; nothing to do" )
@@ -88,28 +83,30 @@ func main() {
8883
8984 for _ , target := range targets {
9085 log := log .With ("target" , target )
91- mergeBase , err := MergeBase (ctx , client .Repositories , owner , repo , target .Name , * payload . GetPullRequest ().Base . Ref )
86+ mergeBase , err := MergeBase (ctx , client .Repositories , prInfo . RepoOwner , prInfo . RepoName , target .Name , prInfo . Pr . GetBase ().GetRef () )
9287 if err != nil {
9388 log .Error ("error finding merge-base" , "error" , err )
9489 }
9590
9691 opts := BackportOpts {
97- PullRequestNumber : payload . GetPullRequest () .GetNumber (),
98- SourceSHA : payload . GetPullRequest () .GetMergeCommitSHA (),
99- SourceCommitDate : payload . GetPullRequest (). MergedAt .Time ,
100- SourceTitle : payload . GetPullRequest () .GetTitle (),
101- SourceBody : payload . GetPullRequest () .GetBody (),
92+ PullRequestNumber : prInfo . Pr .GetNumber (),
93+ SourceSHA : prInfo . Pr .GetMergeCommitSHA (),
94+ SourceCommitDate : prInfo . Pr . GetMergedAt () .Time ,
95+ SourceTitle : prInfo . Pr .GetTitle (),
96+ SourceBody : prInfo . Pr .GetBody (),
10297 Target : target ,
103- Labels : append (inputs .Labels , payload . GetPullRequest () .Labels ... ),
104- Owner : owner ,
105- Repository : repo ,
98+ Labels : append (inputs .Labels , prInfo . Pr .Labels ... ),
99+ Owner : prInfo . RepoOwner ,
100+ Repository : prInfo . RepoName ,
106101 MergeBase : mergeBase ,
107102 }
108- pr , err := Backport (ctx , log , client .PullRequests , client .Issues , client .Issues , NewShellCommandRunner (log ), opts )
103+
104+ prOut , err := Backport (ctx , log , client .PullRequests , client .Issues , client .Issues , NewShellCommandRunner (log ), opts )
109105 if err != nil {
110106 log .Error ("backport failed" , "error" , err )
111107 continue
112108 }
113- log .Info ("backport successful" , "url" , pr .GetURL ())
109+
110+ log .Info ("backport successful" , "url" , prOut .GetURL ())
114111 }
115112}
0 commit comments