Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package main
- import (
- "context"
- "fmt"
- "github.com/google/go-github/github"
- )
- func main() {
- username := "etataurov"
- tp := github.BasicAuthTransport{
- Username: username,
- Password: "PASSWORD",
- }
- client := github.NewClient(tp.Client())
- ctx := context.Background()
- opt := &github.ListOptions{PerPage: 30}
- var allEvents []*github.IssueEvent
- repos := []string{"zvq-prod", "auth", "zvq-report"}
- var reviews []map[int]string
- for _, repo := range repos {
- reviewStates := make(map[int]string)
- for {
- events, resp, err := client.Activity.ListIssueEventsForRepository(ctx, "dreamindustries", repo, opt)
- if err != nil {
- fmt.Println(err)
- break
- }
- for _, e := range events {
- if e.GetEvent() == "review_requested" && e.Actor.GetLogin() != username {
- allEvents = append(allEvents, e)
- reviews, _, _ := client.PullRequests.ListReviews(ctx, "dreamindustries", repo, *e.Issue.Number, nil)
- for _, r := range reviews {
- if *r.User.Login == username {
- reviewStates[*e.Issue.Number] = r.GetState()
- }
- }
- }
- }
- if resp.NextPage == 0 || resp.NextPage == 3 {
- break
- }
- opt.Page = resp.NextPage
- }
- reviews = append(reviews, reviewStates)
- }
- fmt.Printf("\n%v\n", github.Stringify(reviews))
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement