Documentation
¶
Index ¶
- type Action
- func (c *Action) AddFlags(fs *flag.FlagSet)
- func (c *Action) CreateCheckRun(client *github.Client, ctx context.Context, owner, repo string, ...) (*github.CheckRun, *github.Response, error)
- func (c *Action) CreateCheckRunsForSuite(e *github.CheckSuite) error
- func (c *Action) CreateCheckSuite(pre *github.PullRequestEvent) (*github.CheckSuite, error)
- func (c *Action) EnsureCheckRun(pre *github.PullRequestEvent) error
- func (c *Action) EnsureCheckSuite(pre *github.PullRequestEvent) (*github.CheckSuite, error)
- func (c *Action) ExecCheckRun(e *github.CheckRunEvent) error
- func (c *Action) HandleEvent(payload interface{}) error
- func (c *Action) Run(args []string) error
- func (c *Action) UpdateCheckRun(owner, repo string, checkRun *github.CheckRun, summary, text string, ...) error
- type CreateCheckRunOptions
- type Run
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Action ¶
type Action struct {
BaseURL, UploadURL string
StatusContext string
StatusDescription string
Cmd string
Args []string
// contains filtered or unexported fields
}
func (*Action) CreateCheckRun ¶
func (*Action) CreateCheckRunsForSuite ¶
func (c *Action) CreateCheckRunsForSuite(e *github.CheckSuite) error
func (*Action) CreateCheckSuite ¶
func (c *Action) CreateCheckSuite(pre *github.PullRequestEvent) (*github.CheckSuite, error)
CreateCheckSuite creates a new check suite and rerequests it based on a pull request.
The Check Suite webhook events are normally only triggered on `push` events. This function acts as an adapter to take a PR and trigger a check suite.
The GitHub API is still evolving, so the current way we do this is...
- generate auth tokens for the instance/app combo. This is required to perform the action as a GitHub app
- try to create a check_suite
- if success, run a `rerequest` on this check suite because merely creating a check suite does not actually trigger a check_suite:requested webhook event
- if failure, check to see if we already have a check suite object, and merely run the rerequest on that check suite.
func (*Action) EnsureCheckRun ¶
func (c *Action) EnsureCheckRun(pre *github.PullRequestEvent) error
func (*Action) EnsureCheckSuite ¶
func (c *Action) EnsureCheckSuite(pre *github.PullRequestEvent) (*github.CheckSuite, error)
func (*Action) ExecCheckRun ¶
func (c *Action) ExecCheckRun(e *github.CheckRunEvent) error
func (*Action) HandleEvent ¶
type CreateCheckRunOptions ¶
type CreateCheckRunOptions struct {
Name string `json:"name"` // The name of the check (e.g., "code-coverage"). (Required.)
HeadBranch string `json:"head_branch"` // The name of the branch to perform a check against. (Required.)
HeadSHA string `json:"head_sha"` // The SHA of the commit. (Required.)
DetailsURL *string `json:"details_url,omitempty"` // The URL of the integrator's site that has the full details of the check. (Optional.)
ExternalID *string `json:"external_id,omitempty"` // A reference for the run on the integrator's system. (Optional.)
Status *string `json:"status,omitempty"` // The current status. Can be one of "queued", "in_progress", or "completed". Default: "queued". (Optional.)
Conclusion *string `json:"conclusion,omitempty"` // Can be one of "success", "failure", "neutral", "cancelled", "timed_out", or "action_required". (Optional. Required if you provide a status of "completed".)
// Does this really work?
CheckSuiteID *int64 `json:"check_suite_id,omitempty`
StartedAt *github.Timestamp `json:"started_at,omitempty"` // The time that the check run began. (Optional.)
CompletedAt *github.Timestamp `json:"completed_at,omitempty"` // The time the check completed. (Optional. Required if you provide conclusion.)
Output *github.CheckRunOutput `json:"output,omitempty"` // Provide descriptive details about the run. (Optional)
Actions []*github.CheckRunAction `json:"actions,omitempty"` // Possible further actions the integrator can perform, which a user may trigger. (Optional.)
}
Click to show internal directories.
Click to hide internal directories.