当前位置: 首页>>代码示例>>Golang>>正文


Golang github.IssueListByRepoOptions类代码示例

本文整理汇总了Golang中github.com/google/go-github/github.IssueListByRepoOptions的典型用法代码示例。如果您正苦于以下问题:Golang IssueListByRepoOptions类的具体用法?Golang IssueListByRepoOptions怎么用?Golang IssueListByRepoOptions使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了IssueListByRepoOptions类的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。

示例1: getIssuesList

func (t *Github) getIssuesList(input *messages.GetIssuesList) []github.Issue {

	if input.Repo == "" {
		options := github.IssueListOptions{
			Filter: "all",
		}
		if input.Status != "" {
			options.Labels = []string{input.Status}
		}
		options.Page = 0
		options.PerPage = 100
		githubIssues, _, err := t.client.Issues.ListByOrg(input.Org, &options)
		if err != nil {
			log.Println(err.Error())
		}
		return githubIssues
	}

	options := github.IssueListByRepoOptions{}
	if input.Status != "" {
		options.Labels = []string{input.Status}
	}
	options.Page = 0
	options.PerPage = 100
	githubIssues, _, err := t.client.Issues.ListByRepo(input.Org, input.Repo, &options)
	if err != nil {
		log.Println(err.Error())
	}
	return githubIssues
}
开发者ID:supu-io,项目名称:issue-tracker,代码行数:30,代码来源:github.go

示例2: IssuesFilter

// Filters issues based on mileston, assignee, creatoror, labels or state.
// Pass empty strings for things that arnt to be filtered.
// Returns array of issues in order asked for.
// TODO(butlerx) filter offline issues if query of repo fails.
func IssuesFilter(repo, state, milestone, assignee, creator, sort, order string, labels []string) ([]github.Issue, error) {
	s := strings.Split(repo, "/")
	sorting := new(github.IssueListByRepoOptions)
	if len(labels) != 0 {
		sorting.Labels = labels
	}
	if state != "" {
		sorting.State = state
	}
	if milestone != "" {
		sorting.Milestone = milestone
	}
	if assignee != "" {
		sorting.Assignee = assignee
	}
	if creator != "" {
		sorting.Creator = creator
	}
	if sort != "" {
		sorting.Sort = sort
	}
	if order != "" {
		sorting.Direction = order
	}
	issues, _, err := client.Issues.ListByRepo(s[0], s[1], sorting)
	return issues, err
}
开发者ID:butlerx,项目名称:AgileGit,代码行数:31,代码来源:gitissue.go

示例3: ListAllIssues

// ListAllIssues grabs all issues matching the options, so you don't have to
// worry about paging. Enforces some constraints, like min/max PR number and
// having a valid user.
func (config *Config) ListAllIssues(listOpts *github.IssueListByRepoOptions) ([]*github.Issue, error) {
	allIssues := []*github.Issue{}
	page := 1
	for {
		glog.V(4).Infof("Fetching page %d of issues", page)
		listOpts.ListOptions = github.ListOptions{PerPage: 100, Page: page}
		issues, response, err := config.client.Issues.ListByRepo(config.Org, config.Project, listOpts)
		config.analytics.ListIssues.Call(config, response)
		if err != nil {
			return nil, err
		}
		for i := range issues {
			issue := &issues[i]
			if issue.Number == nil {
				glog.Infof("Skipping issue with no number, very strange")
				continue
			}
			if issue.User == nil || issue.User.Login == nil {
				glog.V(2).Infof("Skipping PR %d with no user info %#v.", *issue.Number, issue.User)
				continue
			}
			if *issue.Number < config.MinPRNumber {
				glog.V(6).Infof("Dropping %d < %d", *issue.Number, config.MinPRNumber)
				continue
			}
			if *issue.Number > config.MaxPRNumber {
				glog.V(6).Infof("Dropping %d > %d", *issue.Number, config.MaxPRNumber)
				continue
			}
			allIssues = append(allIssues, issue)
		}
		if response.LastPage == 0 || response.LastPage <= page {
			break
		}
		page++
	}
	return allIssues, nil
}
开发者ID:timstclair,项目名称:kube-contrib,代码行数:41,代码来源:github.go


注:本文中的github.com/google/go-github/github.IssueListByRepoOptions类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。