Documentation
¶
Index ¶
- Constants
- func DetectWorkflows(gitRepo *git.Repository, commit *git.Commit, ...) ([]*DetectedWorkflow, []*DetectedWorkflow, error)
- func DownloadArtifactV4(ctx *context.Base, art *actions_model.ActionArtifact) error
- func DownloadArtifactV4Fallback(ctx *context.Base, art *actions_model.ActionArtifact) error
- func DownloadArtifactV4ServeDirectOnly(ctx *context.Base, art *actions_model.ActionArtifact) (bool, error)
- func FormatLog(timestamp time.Time, content string) string
- func FullSteps(task *actions_model.ActionTask) []*actions_model.ActionTaskStep
- func GetContentFromEntry(entry *git.TreeEntry) ([]byte, error)
- func GetEventsFromContent(content []byte) ([]*jobparser.Event, error)
- func IsArtifactV4(art *actions_model.ActionArtifact) bool
- func IsDefaultBranchWorkflow(triggedEvent webhook_module.HookEventType) bool
- func IsWorkflow(path string) bool
- func ListWorkflows(commit *git.Commit) (git.Entries, error)
- func OpenLogs(ctx context.Context, inStorage bool, filename string) (io.ReadSeekCloser, error)
- func ParseLog(in string) (time.Time, string, error)
- func ReadLogs(ctx context.Context, inStorage bool, filename string, offset, limit int64) ([]*runnerv1.LogRow, error)
- func RemoveLogs(ctx context.Context, inStorage bool, filename string) error
- func TransferLogs(ctx context.Context, filename string) (func(), error)
- func WriteLogs(ctx context.Context, filename string, offset int64, rows []*runnerv1.LogRow) ([]int, error)
- type DetectedWorkflow
Constants ¶
const ( GithubEventPullRequest = "pull_request" GithubEventPullRequestTarget = "pull_request_target" GithubEventPullRequestReviewComment = "pull_request_review_comment" GithubEventPullRequestReview = "pull_request_review" GithubEventRegistryPackage = "registry_package" GithubEventCreate = "create" GithubEventDelete = "delete" GithubEventFork = "fork" GithubEventPush = "push" GithubEventIssues = "issues" GithubEventIssueComment = "issue_comment" GithubEventRelease = "release" GithubEventPullRequestComment = "pull_request_comment" GithubEventGollum = "gollum" GithubEventSchedule = "schedule" )
const ( MaxLineSize = 64 * 1024 DBFSPrefix = "actions_log/" )
Variables ¶
This section is empty.
Functions ¶
func DetectWorkflows ¶
func DetectWorkflows( gitRepo *git.Repository, commit *git.Commit, triggedEvent webhook_module.HookEventType, payload api.Payloader, detectSchedule bool, ) ([]*DetectedWorkflow, []*DetectedWorkflow, error)
func DownloadArtifactV4 ¶
func DownloadArtifactV4(ctx *context.Base, art *actions_model.ActionArtifact) error
func DownloadArtifactV4Fallback ¶
func DownloadArtifactV4Fallback(ctx *context.Base, art *actions_model.ActionArtifact) error
func DownloadArtifactV4ServeDirectOnly ¶
func DownloadArtifactV4ServeDirectOnly(ctx *context.Base, art *actions_model.ActionArtifact) (bool, error)
func FullSteps ¶
func FullSteps(task *actions_model.ActionTask) []*actions_model.ActionTaskStep
FullSteps returns steps with "Set up job" and "Complete job"
func GetContentFromEntry ¶ added in v1.20.0
func GetEventsFromContent ¶ added in v1.20.0
func IsArtifactV4 ¶
func IsArtifactV4(art *actions_model.ActionArtifact) bool
Artifacts using the v4 backend are stored as a single combined zip file per artifact on the backend The v4 backend ensures ContentEncoding is set to "application/zip", which is not the case for the old backend
func IsDefaultBranchWorkflow ¶ added in v1.21.6
func IsDefaultBranchWorkflow(triggedEvent webhook_module.HookEventType) bool
IsDefaultBranchWorkflow returns true if the event only triggers workflows on the default branch
func IsWorkflow ¶ added in v1.20.0
func TransferLogs ¶
TransferLogs transfers logs from DBFS to object storage. It happens when the file is complete and no more logs will be appended. It respects the file format in the filename like ".zst", and compresses the content if needed.
func WriteLogs ¶
func WriteLogs(ctx context.Context, filename string, offset int64, rows []*runnerv1.LogRow) ([]int, error)
WriteLogs appends logs to DBFS file for temporary storage. It doesn't respect the file format in the filename like ".zst", since it's difficult to reopen a closed compressed file and append new content. Why doesn't it store logs in object storage directly? Because it's not efficient to append content to object storage.
Types ¶
type DetectedWorkflow ¶ added in v1.21.0
func DetectScheduledWorkflows ¶ added in v1.21.5
func DetectScheduledWorkflows(gitRepo *git.Repository, commit *git.Commit) ([]*DetectedWorkflow, error)