Documentation
¶
Index ¶
- Variables
- func AddReview(client *Client, repo ghrepo.Interface, pr *PullRequest, ...) error
- func BranchDeleteRemote(client *Client, repo ghrepo.Interface, branch string) error
- func CanPushToRepo(httpClient *http.Client, repo ghrepo.Interface) (bool, error)
- func CommentCreate(client *Client, repoHost string, params CommentCreateInput) (string, error)
- func CurrentLoginName(client *Client, hostname string) (string, error)
- func CurrentUserID(client *Client, hostname string) (string, error)
- func ExportIssues(issues []Issue, fields []string) *[]interface{}
- func ExportPRs(prs []PullRequest, fields []string) *[]interface{}
- func HandleHTTPError(resp *http.Response) error
- func IssueClose(client *Client, repo ghrepo.Interface, issue Issue) error
- func IssueDelete(client *Client, repo ghrepo.Interface, issue Issue) error
- func IssueReopen(client *Client, repo ghrepo.Interface, issue Issue) error
- func IssueUpdate(client *Client, repo ghrepo.Interface, params githubv4.UpdateIssueInput) error
- func NewCachedClient(httpClient *http.Client, cacheTTL time.Duration) *http.Client
- func NewHTTPClient(opts ...ClientOption) *http.Client
- func ProjectNamesToPaths(client *Client, repo ghrepo.Interface, projectNames []string) ([]string, error)
- func ProjectsToPaths(projects []RepoProject, names []string) ([]string, error)
- func PullRequestClose(client *Client, repo ghrepo.Interface, pr *PullRequest) error
- func PullRequestGraphQL(fields []string) string
- func PullRequestReady(client *Client, repo ghrepo.Interface, pr *PullRequest) error
- func PullRequestReopen(client *Client, repo ghrepo.Interface, pr *PullRequest) error
- func RepoDefaultBranch(client *Client, repo ghrepo.Interface) (string, error)
- func RepoParent(client *Client, repo ghrepo.Interface) (ghrepo.Interface, error)
- func UpdatePullRequest(client *Client, repo ghrepo.Interface, params githubv4.UpdatePullRequestInput) error
- func UpdatePullRequestReviews(client *Client, repo ghrepo.Interface, params githubv4.RequestReviewsInput) error
- type Assignees
- type Author
- type BranchRef
- type Client
- func (c Client) GraphQL(hostname string, query string, variables map[string]interface{}, ...) error
- func (c *Client) HTTP() *http.Client
- func (c Client) PullRequestDiff(baseRepo ghrepo.Interface, prNumber int) (io.ReadCloser, error)
- func (c Client) REST(hostname string, method string, p string, body io.Reader, data interface{}) error
- type ClientOption
- func AddHeader(name, value string) ClientOption
- func AddHeaderFunc(name string, getValue func(*http.Request) (string, error)) ClientOption
- func CacheResponse(ttl time.Duration, dir string) ClientOption
- func ReplaceTripper(tr http.RoundTripper) ClientOption
- func VerboseLog(out io.Writer, logTraffic bool, colorize bool) ClientOption
- type Comment
- func (c Comment) Association() string
- func (c Comment) AuthorLogin() string
- func (c Comment) Content() string
- func (c Comment) Created() time.Time
- func (c Comment) HiddenReason() string
- func (c Comment) IsEdited() bool
- func (c Comment) IsHidden() bool
- func (c Comment) Link() string
- func (c Comment) Reactions() ReactionGroups
- func (c Comment) Status() string
- type CommentCreateInput
- type Comments
- type Commit
- type GraphQLError
- type GraphQLErrorResponse
- type HTTPError
- type HTTPErrorItem
- type Issue
- type IssueStatusOptions
- type IssuesAndTotalCount
- type IssuesDisabledError
- type IssuesPayload
- type Labels
- type Milestone
- type NotFoundError
- type OrgTeam
- type PageInfo
- type ProjectCards
- type PullRequest
- func CreatePullRequest(client *Client, repo *Repository, params map[string]interface{}) (*PullRequest, error)
- func PullRequestByNumber(client *Client, repo ghrepo.Interface, number int) (*PullRequest, error)
- func PullRequestForBranch(client *Client, repo ghrepo.Interface, baseBranch, headBranch string, ...) (*PullRequest, error)
- func (pr *PullRequest) ChecksStatus() (summary PullRequestChecksStatus)
- func (pr *PullRequest) DisplayableReviews() PullRequestReviews
- func (pr *PullRequest) ExportData(fields []string) *map[string]interface{}
- func (pr PullRequest) HeadLabel() string
- func (pr PullRequest) Identifier() string
- func (pr PullRequest) IsOpen() bool
- func (pr PullRequest) Link() string
- func (pr *PullRequest) ReviewStatus() PullRequestReviewStatus
- type PullRequestAndTotalCount
- type PullRequestChecksStatus
- type PullRequestFile
- type PullRequestReview
- func (prr PullRequestReview) Association() string
- func (prr PullRequestReview) AuthorLogin() string
- func (prr PullRequestReview) Content() string
- func (prr PullRequestReview) Created() time.Time
- func (prr PullRequestReview) HiddenReason() string
- func (prr PullRequestReview) IsEdited() bool
- func (prr PullRequestReview) IsHidden() bool
- func (prr PullRequestReview) Link() string
- func (prr PullRequestReview) Reactions() ReactionGroups
- func (prr PullRequestReview) Status() string
- type PullRequestReviewInput
- type PullRequestReviewState
- type PullRequestReviewStatus
- type PullRequestReviews
- type PullRequestsPayload
- type ReactionGroup
- type ReactionGroupUsers
- type ReactionGroups
- type RepoAssignee
- type RepoLabel
- type RepoMetadataInput
- type RepoMetadataResult
- func (m *RepoMetadataResult) LabelsToIDs(names []string) ([]string, error)
- func (m *RepoMetadataResult) MembersToIDs(names []string) ([]string, error)
- func (m *RepoMetadataResult) Merge(m2 *RepoMetadataResult)
- func (m *RepoMetadataResult) MilestoneToID(title string) (string, error)
- func (m *RepoMetadataResult) ProjectsToIDs(names []string) ([]string, error)
- func (m *RepoMetadataResult) TeamsToIDs(names []string) ([]string, error)
- type RepoMilestone
- func MilestoneByNumber(client *Client, repo ghrepo.Interface, number int32) (*RepoMilestone, error)
- func MilestoneByTitle(client *Client, repo ghrepo.Interface, state, title string) (*RepoMilestone, error)
- func RepoMilestones(client *Client, repo ghrepo.Interface, state string) ([]RepoMilestone, error)
- type RepoNetworkResult
- type RepoProject
- type RepoResolveInput
- type Repository
- func ForkRepo(client *Client, repo ghrepo.Interface) (*Repository, error)
- func GitHubRepo(client *Client, repo ghrepo.Interface) (*Repository, error)
- func InitRepoHostname(repo *Repository, hostname string) *Repository
- func RepoFindForks(client *Client, repo ghrepo.Interface, limit int) ([]*Repository, error)
- type RepositoryOwner
- type ReviewRequests
- type StatusOptions
Constants ¶
This section is empty.
Variables ¶
var IssueFields = []string{
"assignees",
"author",
"body",
"closed",
"comments",
"createdAt",
"closedAt",
"id",
"labels",
"milestone",
"number",
"projectCards",
"reactionGroups",
"state",
"title",
"updatedAt",
"url",
}
var PullRequestFields = append(IssueFields,
"additions",
"baseRefName",
"changedFiles",
"deletions",
"files",
"headRefName",
"headRepository",
"headRepositoryOwner",
"isCrossRepository",
"isDraft",
"maintainerCanModify",
"mergeable",
"mergeCommit",
"mergedAt",
"mergedBy",
"mergeStateStatus",
"potentialMergeCommit",
"reviewDecision",
"reviewRequests",
"reviews",
"statusCheckRollup",
)
Functions ¶
func AddReview ¶ added in v0.8.0
func AddReview(client *Client, repo ghrepo.Interface, pr *PullRequest, input *PullRequestReviewInput) error
func BranchDeleteRemote ¶ added in v0.9.0
func CanPushToRepo ¶ added in v1.0.0
func CommentCreate ¶ added in v1.5.0
func CommentCreate(client *Client, repoHost string, params CommentCreateInput) (string, error)
func CurrentLoginName ¶ added in v0.10.0
func CurrentUserID ¶ added in v0.12.0
func ExportIssues ¶ added in v1.9.0
func ExportPRs ¶ added in v1.9.0
func ExportPRs(prs []PullRequest, fields []string) *[]interface{}
func HandleHTTPError ¶ added in v1.0.0
func IssueClose ¶ added in v0.8.0
func IssueDelete ¶ added in v1.6.0
func IssueReopen ¶ added in v0.8.0
func IssueUpdate ¶ added in v1.6.0
func NewCachedClient ¶ added in v1.6.0
func NewHTTPClient ¶ added in v0.10.0
func NewHTTPClient(opts ...ClientOption) *http.Client
NewHTTPClient initializes an http.Client
func ProjectNamesToPaths ¶ added in v1.6.0
func ProjectsToPaths ¶ added in v1.6.0
func ProjectsToPaths(projects []RepoProject, names []string) ([]string, error)
func PullRequestClose ¶ added in v0.8.0
func PullRequestClose(client *Client, repo ghrepo.Interface, pr *PullRequest) error
func PullRequestGraphQL ¶ added in v1.9.0
func PullRequestReady ¶ added in v0.9.0
func PullRequestReady(client *Client, repo ghrepo.Interface, pr *PullRequest) error
func PullRequestReopen ¶ added in v0.8.0
func PullRequestReopen(client *Client, repo ghrepo.Interface, pr *PullRequest) error
func RepoDefaultBranch ¶ added in v0.11.0
func RepoParent ¶ added in v0.6.3
RepoParent finds out the parent repository of a fork
func UpdatePullRequest ¶ added in v1.6.0
func UpdatePullRequestReviews ¶ added in v1.6.0
Types ¶
type BranchRef ¶ added in v0.12.0
type BranchRef struct {
Name string
}
BranchRef is the branch name in a GitHub repository
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client facilitates making HTTP requests to the GitHub API
func NewClientFromHTTP ¶ added in v0.11.1
NewClientFromHTTP takes in an http.Client instance
func (Client) GraphQL ¶
func (c Client) GraphQL(hostname string, query string, variables map[string]interface{}, data interface{}) error
GraphQL performs a GraphQL request and parses the response
func (Client) PullRequestDiff ¶ added in v0.9.0
type ClientOption ¶
type ClientOption = func(http.RoundTripper) http.RoundTripper
ClientOption represents an argument to NewClient
func AddHeader ¶
func AddHeader(name, value string) ClientOption
AddHeader turns a RoundTripper into one that adds a request header
func AddHeaderFunc ¶ added in v0.8.0
AddHeaderFunc is an AddHeader that gets the string value from a function
func CacheResponse ¶ added in v1.3.0
func CacheResponse(ttl time.Duration, dir string) ClientOption
CacheResponse produces a RoundTripper that caches HTTP responses to disk for a specified amount of time
func ReplaceTripper ¶
func ReplaceTripper(tr http.RoundTripper) ClientOption
ReplaceTripper substitutes the underlying RoundTripper with a custom one
func VerboseLog ¶
func VerboseLog(out io.Writer, logTraffic bool, colorize bool) ClientOption
VerboseLog enables request/response logging within a RoundTripper
type Comment ¶ added in v1.4.0
type Comment struct {
Author Author `json:"author"`
AuthorAssociation string `json:"authorAssociation"`
Body string `json:"body"`
CreatedAt time.Time `json:"createdAt"`
IncludesCreatedEdit bool `json:"includesCreatedEdit"`
IsMinimized bool `json:"isMinimized"`
MinimizedReason string `json:"minimizedReason"`
ReactionGroups ReactionGroups `json:"reactionGroups"`
}
func (Comment) Association ¶ added in v1.5.0
func (Comment) AuthorLogin ¶ added in v1.5.0
func (Comment) HiddenReason ¶ added in v1.6.0
func (Comment) Reactions ¶ added in v1.5.0
func (c Comment) Reactions() ReactionGroups
type CommentCreateInput ¶ added in v1.5.0
type Comments ¶ added in v1.4.0
func CommentsForIssue ¶ added in v1.4.0
func CommentsForPullRequest ¶ added in v1.4.0
type GraphQLError ¶
GraphQLError is a single error returned in a GraphQL response
type GraphQLErrorResponse ¶
type GraphQLErrorResponse struct {
Errors []GraphQLError
}
GraphQLErrorResponse contains errors returned in a GraphQL response
func (GraphQLErrorResponse) Error ¶
func (gr GraphQLErrorResponse) Error() string
type HTTPError ¶ added in v0.11.0
type HTTPError struct {
StatusCode int
RequestURL *url.URL
Message string
OAuthScopes string
Errors []HTTPErrorItem
}
HTTPError is an error returned by a failed API call
type HTTPErrorItem ¶ added in v1.6.0
type Issue ¶
type Issue struct {
ID string
Number int
Title string
URL string
State string
Closed bool
Body string
CreatedAt time.Time
UpdatedAt time.Time
ClosedAt *time.Time
Comments Comments
Author Author
Assignees Assignees
Labels Labels
ProjectCards ProjectCards
Milestone Milestone
ReactionGroups ReactionGroups
}
func IssueByNumber ¶
func IssueCreate ¶
func IssueCreate(client *Client, repo *Repository, params map[string]interface{}) (*Issue, error)
IssueCreate creates an issue in a GitHub repository
func (*Issue) ExportData ¶ added in v1.9.0
func (Issue) Identifier ¶ added in v1.5.0
type IssueStatusOptions ¶ added in v1.9.0
type IssuesAndTotalCount ¶
type IssuesDisabledError ¶ added in v0.8.0
type IssuesDisabledError struct {
// contains filtered or unexported fields
}
type IssuesPayload ¶
type IssuesPayload struct {
Assigned IssuesAndTotalCount
Mentioned IssuesAndTotalCount
Authored IssuesAndTotalCount
}
func IssueStatus ¶
func IssueStatus(client *Client, repo ghrepo.Interface, options IssueStatusOptions) (*IssuesPayload, error)
type NotFoundError ¶
type NotFoundError struct {
// contains filtered or unexported fields
}
func (*NotFoundError) Unwrap ¶ added in v0.11.1
func (err *NotFoundError) Unwrap() error
type ProjectCards ¶ added in v1.6.0
type ProjectCards struct {
Nodes []struct {
Project struct {
Name string `json:"name"`
} `json:"project"`
Column struct {
Name string `json:"name"`
} `json:"column"`
}
TotalCount int
}
func (ProjectCards) ProjectNames ¶ added in v1.6.0
func (p ProjectCards) ProjectNames() []string
type PullRequest ¶
type PullRequest struct {
ID string
Number int
Title string
State string
URL string
BaseRefName string
HeadRefName string
Body string
Mergeable string
Additions int
Deletions int
ChangedFiles int
MergeStateStatus string
CreatedAt time.Time
UpdatedAt time.Time
ClosedAt *time.Time
MergedAt *time.Time
MergeCommit *Commit
PotentialMergeCommit *Commit
Files struct {
Nodes []PullRequestFile
}
Author Author
MergedBy *Author
HeadRepositoryOwner struct {
Login string `json:"login"`
}
HeadRepository struct {
Name string
}
IsCrossRepository bool
IsDraft bool
MaintainerCanModify bool
BaseRef struct {
BranchProtectionRule struct {
RequiresStrictStatusChecks bool
}
}
ReviewDecision string
Commits struct {
TotalCount int
Nodes []struct {
Commit struct {
Oid string
StatusCheckRollup struct {
Contexts struct {
Nodes []struct {
TypeName string `json:"__typename"`
Name string `json:"name"`
Context string `json:"context,omitempty"`
State string `json:"state,omitempty"`
Status string `json:"status"`
Conclusion string `json:"conclusion"`
StartedAt time.Time `json:"startedAt"`
CompletedAt time.Time `json:"completedAt"`
DetailsURL string `json:"detailsUrl"`
TargetURL string `json:"targetUrl,omitempty"`
}
}
}
}
}
}
Assignees Assignees
Labels Labels
ProjectCards ProjectCards
Milestone Milestone
Comments Comments
ReactionGroups ReactionGroups
Reviews PullRequestReviews
ReviewRequests ReviewRequests
}
func CreatePullRequest ¶
func CreatePullRequest(client *Client, repo *Repository, params map[string]interface{}) (*PullRequest, error)
CreatePullRequest creates a pull request in a GitHub repository
func PullRequestByNumber ¶
func PullRequestForBranch ¶
func (*PullRequest) ChecksStatus ¶
func (pr *PullRequest) ChecksStatus() (summary PullRequestChecksStatus)
func (*PullRequest) DisplayableReviews ¶ added in v1.5.0
func (pr *PullRequest) DisplayableReviews() PullRequestReviews
func (*PullRequest) ExportData ¶ added in v1.9.0
func (pr *PullRequest) ExportData(fields []string) *map[string]interface{}
func (PullRequest) HeadLabel ¶
func (pr PullRequest) HeadLabel() string
func (PullRequest) Identifier ¶ added in v1.5.0
func (pr PullRequest) Identifier() string
func (PullRequest) IsOpen ¶ added in v1.9.2
func (pr PullRequest) IsOpen() bool
func (PullRequest) Link ¶ added in v1.5.0
func (pr PullRequest) Link() string
func (*PullRequest) ReviewStatus ¶
func (pr *PullRequest) ReviewStatus() PullRequestReviewStatus
type PullRequestAndTotalCount ¶
type PullRequestAndTotalCount struct {
TotalCount int
PullRequests []PullRequest
}
type PullRequestChecksStatus ¶
type PullRequestFile ¶ added in v1.9.0
type PullRequestReview ¶ added in v1.5.0
type PullRequestReview struct {
Author Author `json:"author"`
AuthorAssociation string `json:"authorAssociation"`
Body string `json:"body"`
SubmittedAt *time.Time `json:"submittedAt"`
IncludesCreatedEdit bool `json:"includesCreatedEdit"`
ReactionGroups ReactionGroups `json:"reactionGroups"`
State string `json:"state"`
URL string `json:"url,omitempty"`
}
func (PullRequestReview) Association ¶ added in v1.5.0
func (prr PullRequestReview) Association() string
func (PullRequestReview) AuthorLogin ¶ added in v1.5.0
func (prr PullRequestReview) AuthorLogin() string
func (PullRequestReview) Content ¶ added in v1.5.0
func (prr PullRequestReview) Content() string
func (PullRequestReview) Created ¶ added in v1.5.0
func (prr PullRequestReview) Created() time.Time
func (PullRequestReview) HiddenReason ¶ added in v1.6.0
func (prr PullRequestReview) HiddenReason() string
func (PullRequestReview) IsEdited ¶ added in v1.5.0
func (prr PullRequestReview) IsEdited() bool
func (PullRequestReview) IsHidden ¶ added in v1.6.0
func (prr PullRequestReview) IsHidden() bool
func (PullRequestReview) Link ¶ added in v1.5.0
func (prr PullRequestReview) Link() string
func (PullRequestReview) Reactions ¶ added in v1.5.0
func (prr PullRequestReview) Reactions() ReactionGroups
func (PullRequestReview) Status ¶ added in v1.5.0
func (prr PullRequestReview) Status() string
type PullRequestReviewInput ¶ added in v0.8.0
type PullRequestReviewInput struct {
Body string
State PullRequestReviewState
}
type PullRequestReviewState ¶ added in v0.8.0
type PullRequestReviewState int
const ( ReviewApprove PullRequestReviewState = iota ReviewRequestChanges ReviewComment )
type PullRequestReviewStatus ¶
type PullRequestReviews ¶ added in v1.5.0
type PullRequestReviews struct {
Nodes []PullRequestReview
PageInfo PageInfo
TotalCount int
}
func ReviewsForPullRequest ¶ added in v1.5.0
func ReviewsForPullRequest(client *Client, repo ghrepo.Interface, pr *PullRequest) (*PullRequestReviews, error)
type PullRequestsPayload ¶
type PullRequestsPayload struct {
ViewerCreated PullRequestAndTotalCount
ReviewRequested PullRequestAndTotalCount
CurrentPR *PullRequest
DefaultBranch string
}
func PullRequestStatus ¶ added in v1.9.0
func PullRequestStatus(client *Client, repo ghrepo.Interface, options StatusOptions) (*PullRequestsPayload, error)
type ReactionGroup ¶ added in v1.4.0
type ReactionGroup struct {
Content string `json:"content"`
Users ReactionGroupUsers `json:"users"`
}
func (ReactionGroup) Count ¶ added in v1.4.0
func (rg ReactionGroup) Count() int
func (ReactionGroup) Emoji ¶ added in v1.4.0
func (rg ReactionGroup) Emoji() string
type ReactionGroupUsers ¶ added in v1.4.0
type ReactionGroupUsers struct {
TotalCount int `json:"totalCount"`
}
type ReactionGroups ¶ added in v1.4.0
type ReactionGroups []ReactionGroup
func (ReactionGroups) MarshalJSON ¶ added in v1.9.0
func (rg ReactionGroups) MarshalJSON() ([]byte, error)
type RepoAssignee ¶ added in v0.8.0
func RepoAssignableUsers ¶ added in v0.8.0
func RepoAssignableUsers(client *Client, repo ghrepo.Interface) ([]RepoAssignee, error)
RepoAssignableUsers fetches all the assignable users for a repository
type RepoMetadataInput ¶ added in v0.8.0
type RepoMetadataResult ¶ added in v0.8.0
type RepoMetadataResult struct {
AssignableUsers []RepoAssignee
Labels []RepoLabel
Projects []RepoProject
Milestones []RepoMilestone
Teams []OrgTeam
}
func RepoMetadata ¶ added in v0.8.0
func RepoMetadata(client *Client, repo ghrepo.Interface, input RepoMetadataInput) (*RepoMetadataResult, error)
RepoMetadata pre-fetches the metadata for attaching to issues and pull requests
func RepoResolveMetadataIDs ¶ added in v0.9.0
func RepoResolveMetadataIDs(client *Client, repo ghrepo.Interface, input RepoResolveInput) (*RepoMetadataResult, error)
RepoResolveMetadataIDs looks up GraphQL node IDs in bulk
func (*RepoMetadataResult) LabelsToIDs ¶ added in v0.8.0
func (m *RepoMetadataResult) LabelsToIDs(names []string) ([]string, error)
func (*RepoMetadataResult) MembersToIDs ¶ added in v0.8.0
func (m *RepoMetadataResult) MembersToIDs(names []string) ([]string, error)
func (*RepoMetadataResult) Merge ¶ added in v1.3.1
func (m *RepoMetadataResult) Merge(m2 *RepoMetadataResult)
func (*RepoMetadataResult) MilestoneToID ¶ added in v0.8.0
func (m *RepoMetadataResult) MilestoneToID(title string) (string, error)
func (*RepoMetadataResult) ProjectsToIDs ¶ added in v0.8.0
func (m *RepoMetadataResult) ProjectsToIDs(names []string) ([]string, error)
func (*RepoMetadataResult) TeamsToIDs ¶ added in v0.8.0
func (m *RepoMetadataResult) TeamsToIDs(names []string) ([]string, error)
type RepoMilestone ¶ added in v0.8.0
func MilestoneByNumber ¶ added in v0.12.0
func MilestoneByTitle ¶ added in v0.12.0
func RepoMilestones ¶ added in v0.8.0
RepoMilestones fetches milestones in a repository
type RepoNetworkResult ¶
type RepoNetworkResult struct {
ViewerLogin string
Repositories []*Repository
}
RepoNetworkResult describes the relationship between related repositories
func RepoNetwork ¶
func RepoNetwork(client *Client, repos []ghrepo.Interface) (RepoNetworkResult, error)
RepoNetwork inspects the relationship between multiple GitHub repositories
type RepoProject ¶ added in v0.8.0
func OrganizationProjects ¶ added in v0.8.0
func OrganizationProjects(client *Client, repo ghrepo.Interface) ([]RepoProject, error)
OrganizationProjects fetches all open projects for an organization
func RepoAndOrgProjects ¶ added in v1.6.0
func RepoAndOrgProjects(client *Client, repo ghrepo.Interface) ([]RepoProject, error)
RepoAndOrgProjects fetches all open projects for a repository and its org
func RepoProjects ¶ added in v0.8.0
func RepoProjects(client *Client, repo ghrepo.Interface) ([]RepoProject, error)
RepoProjects fetches all open projects for a repository
type RepoResolveInput ¶ added in v0.9.0
type Repository ¶
type Repository struct {
ID string
Name string
Description string
URL string
CloneURL string
CreatedAt time.Time
Owner RepositoryOwner
IsPrivate bool
HasIssuesEnabled bool
HasWikiEnabled bool
ViewerPermission string
DefaultBranchRef BranchRef
Parent *Repository
MergeCommitAllowed bool
RebaseMergeAllowed bool
SquashMergeAllowed bool
// contains filtered or unexported fields
}
Repository contains information about a GitHub repo
func ForkRepo ¶
func ForkRepo(client *Client, repo ghrepo.Interface) (*Repository, error)
ForkRepo forks the repository on GitHub and returns the new repository
func GitHubRepo ¶
func GitHubRepo(client *Client, repo ghrepo.Interface) (*Repository, error)
func InitRepoHostname ¶ added in v0.11.1
func InitRepoHostname(repo *Repository, hostname string) *Repository
func RepoFindForks ¶ added in v1.0.0
RepoFindForks finds forks of the repo that are affiliated with the viewer
func (Repository) IsFork ¶
func (r Repository) IsFork() bool
IsFork is true when this repository has a parent repository
func (Repository) RepoHost ¶ added in v0.11.0
func (r Repository) RepoHost() string
RepoHost is the GitHub hostname of the repository
func (Repository) RepoName ¶
func (r Repository) RepoName() string
RepoName is the name of the repository
func (Repository) RepoOwner ¶
func (r Repository) RepoOwner() string
RepoOwner is the login name of the owner
func (Repository) ViewerCanPush ¶
func (r Repository) ViewerCanPush() bool
ViewerCanPush is true when the requesting user has push access
func (Repository) ViewerCanTriage ¶ added in v0.8.0
func (r Repository) ViewerCanTriage() bool
ViewerCanTriage is true when the requesting user can triage issues and pull requests
type RepositoryOwner ¶
type RepositoryOwner struct {
Login string
}
RepositoryOwner is the owner of a GitHub repository
type ReviewRequests ¶ added in v1.6.0
type ReviewRequests struct {
Nodes []struct {
RequestedReviewer struct {
TypeName string `json:"__typename"`
Login string `json:"login"`
Name string `json:"name"`
}
}
TotalCount int
}
func (ReviewRequests) Logins ¶ added in v1.6.0
func (r ReviewRequests) Logins() []string