Documentation
¶
Index ¶
Constants ¶
const ( ForgeTypeGitea = "gitea" ForgeTypeForgejo = "forgejo" ForgeTypeGitHub = "github" ForgeTypeGitLab = "gitlab" ForgeTypeBitbucket = "bitbucket" )
const ( EventTypePush = "push" EventTypePullRequest = "pull_request" EventTypeTag = "tag" EventTypeDeployment = "deployment" EventTypeCron = "cron" EventTypeManual = "manual" )
Variables ¶
This section is empty.
Functions ¶
func SetupConsoleLogger ¶
SetupConsoleLogger sets up the console logger.
Types ¶
type Author ¶
type Author struct {
Name string `json:"name,omitempty"`
Email string `json:"email,omitempty"`
Avatar string `json:"avatar,omitempty"`
}
Author defines runtime metadata for a commit author.
type Commit ¶
type Commit struct {
Sha string `json:"sha,omitempty"`
Ref string `json:"ref,omitempty"`
Refspec string `json:"refspec,omitempty"`
PullRequest string `json:"pull_request,omitempty"`
SourceBranch string `json:"source_branch,omitempty"`
TargetBranch string `json:"target_branch,omitempty"`
Branch string `json:"branch,omitempty"`
Tag string `json:"tag,omitempty"`
Message string `json:"message,omitempty"`
Author Author `json:"author,omitempty"`
}
Commit defines runtime metadata for a commit.
type ExecuteFunc ¶
ExecuteFunc defines the function that is executed by the plugin.
type Forge ¶
type Forge struct {
Type string `json:"type,omitempty"`
URL string `json:"url,omitempty"`
// Deprecated: Please use URL instead.
Link string `json:"link,omitempty"`
}
Forge defines metadata for integration with a forge.
type Metadata ¶
type Metadata struct {
Repository Repository `json:"repo,omitempty"`
Pipeline Pipeline `json:"curr,omitempty"`
Commit Commit `json:"commit,omitempty"`
PreviousCommit Commit `json:"previous_commit,omitempty"`
Step Step `json:"step,omitempty"`
System System `json:"sys,omitempty"`
Forge Forge `json:"forge,omitempty"`
// Deprecated: Please use Commit instead.
Curr Commit
// Deprecated: Please use PreviousCommit instead.
Prev Commit `json:"prev,omitempty"`
}
Metadata defines runtime metadata.
func MetadataFromContext ¶
MetadataFromContext creates a Metadata from the cli.Context.
type Options ¶
type Options struct {
// Name of the plugin.
Name string
// Description of the plugin.
Description string
// Version of the plugin.
Version string
// Flags of the plugin.
Flags []cli.Flag
// Execute function of the plugin.
Execute ExecuteFunc
// Context the plugin will use while executing.
Context context.Context
}
Options defines the options for the plugin.
type Pipeline ¶
type Pipeline struct {
Number int64 `json:"number,omitempty"`
Status string `json:"status,omitempty"`
Event string `json:"event,omitempty"`
URL string `json:"url,omitempty"`
DeployTarget string `json:"target,omitempty"`
Created time.Time `json:"created,omitempty"`
Started time.Time `json:"started,omitempty"`
Finished time.Time `json:"finished,omitempty"`
Parent int64 `json:"parent,omitempty"`
ChangedFiles []string `json:"files,omitempty"`
// Deprecated: Please use URL instead.
Link string `json:"link,omitempty"`
}
Pipeline defines runtime metadata for a pipeline.
type Plugin ¶
type Plugin struct {
App *cli.Command
// Metadata of the current pipeline.
Metadata Metadata
// contains filtered or unexported fields
}
Plugin defines the plugin instance.
func (*Plugin) HTTPClient ¶
HTTPClient returns the http.Client instance.
type Repository ¶
type Repository struct {
RemoteID string `json:"remote_id,omitempty"`
Name string `json:"name,omitempty"`
Owner string `json:"owner,omitempty"`
Link string `json:"link,omitempty"`
URL string `json:"url,omitempty"`
CloneURL string `json:"clone_url,omitempty"`
Private bool `json:"private,omitempty"`
DefaultBranch string `json:"default_branch,omitempty"`
// Deprecated: Please use DefaultBranch instead.
Branch string
}
Repository defines runtime metadata for a repository.
type Step ¶
type Step struct {
Number int `json:"number,omitempty"`
Started time.Time `json:"started,omitempty"`
Finished time.Time `json:"finished,omitempty"`
}
Step defines runtime metadata for a step.
type System ¶
type System struct {
Name string `json:"name,omitempty"`
Host string `json:"host,omitempty"`
Platform string `json:"arch,omitempty"`
Version string `json:"version,omitempty"`
URL string `json:"url,omitempty"`
// Deprecated: Please use URL instead.
Link string `json:"link,omitempty"`
}
System defines runtime metadata for a ci/cd system.