77 "strconv"
88
99 "github.com/ghodss/yaml"
10+ "github.com/jenkins-x/go-scm/scm"
1011 "github.com/pkg/errors"
1112
1213 "github.com/jenkins-x/go-scm/scm/factory"
@@ -15,27 +16,46 @@ import (
1516
1617func main () {
1718 args := os .Args
18- if len (args ) < 3 {
19+ if len (args ) < 2 {
1920 fmt .Printf ("usage: org/repo prNumber" )
2021 return
2122 }
2223 repo := args [1 ]
23- prText := args [ 2 ]
24- number , err := strconv . Atoi ( prText )
24+
25+ client , err := factory . NewClientFromEnvironment ( )
2526 if err != nil {
26- helpers .Fail (errors . Wrapf ( err , "failed to parse PR number: %s" , prText ) )
27+ helpers .Fail (err )
2728 return
2829 }
30+ ctx := context .Background ()
2931
30- client , err := factory .NewClientFromEnvironment ()
32+ if len (args ) < 3 {
33+ fmt .Printf ("Getting PRs\n " )
34+
35+ prs , _ , err := client .PullRequests .List (ctx , repo , scm.PullRequestListOptions {})
36+ if err != nil {
37+ helpers .Fail (err )
38+ return
39+ }
40+ for _ , pr := range prs {
41+ fmt .Printf ("Found PullRequest:\n " )
42+ data , err := yaml .Marshal (pr )
43+ if err != nil {
44+ helpers .Fail (errors .Wrap (err , "failed to marshal PR as YAML" ))
45+ return
46+ }
47+ fmt .Printf ("%s:\n " , string (data ))
48+ }
49+ }
50+ prText := args [2 ]
51+ number , err := strconv .Atoi (prText )
3152 if err != nil {
32- helpers .Fail (err )
53+ helpers .Fail (errors . Wrapf ( err , "failed to parse PR number: %s" , prText ) )
3354 return
3455 }
3556
36- fmt .Printf ("Getting PRs \n " )
57+ fmt .Printf ("Getting PR \n " )
3758
38- ctx := context .Background ()
3959 pr , _ , err := client .PullRequests .Find (ctx , repo , number )
4060 if err != nil {
4161 helpers .Fail (err )
0 commit comments