Documentation
¶
Index ¶
- func EvalBool(evaluator ExpressionEvaluator, expr string) (bool, error)
- func WithJobLogger(ctx context.Context, jobName string, secrets map[string]string, ...) context.Context
- type ActionReader
- type Config
- type ExpressionEvaluator
- type MappableOutput
- type RunContext
- func (rc *RunContext) ActionCacheDir() string
- func (rc *RunContext) Clone() *RunContext
- func (rc *RunContext) CompositeExecutor() common.Executor
- func (rc *RunContext) ContainerWorkdir() string
- func (rc *RunContext) Executor() common.Executor
- func (rc *RunContext) GetActPath() string
- func (rc *RunContext) GetBindsAndMounts() ([]string, map[string]string)
- func (rc *RunContext) GetEnv() map[string]string
- func (rc *RunContext) NewExpressionEvaluator() ExpressionEvaluator
- func (rc *RunContext) SetActPath(actPath string)
- func (rc *RunContext) String() string
- type Runner
- type StepContext
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type ActionReader ¶
type ActionReader interface {
// contains filtered or unexported methods
}
type Config ¶
type Config struct { Actor string // the user that triggered the event Workdir string // path to working directory BindWorkdir bool // bind the workdir to the job container EventName string // name of event to run EventPath string // path to JSON file to use for event.json in containers DefaultBranch string // name of the main branch for this repository ReuseContainers bool // reuse containers to maintain state ForcePull bool // force pulling of the image, even if already present ForceRebuild bool // force rebuilding local docker image action LogOutput bool // log the output from docker run Env map[string]string // env for containers Secrets map[string]string // list of secrets InsecureSecrets bool // switch hiding output when printing to terminal Platforms map[string]string // list of platforms Privileged bool // use privileged mode UsernsMode string // user namespace to use ContainerArchitecture string // Desired OS/architecture platform for running containers ContainerDaemonSocket string // Path to Docker daemon socket UseGitIgnore bool // controls if paths in .gitignore should not be copied into container, default true GitHubInstance string // GitHub instance to use, default "github.com" GitHubServerUrl string // GitHub server url to use GitHubApiServerUrl string // GitHub api server url to use GitHubGraphQlApiServerUrl string // GitHub graphql server url to use ContainerCapAdd []string // list of kernel capabilities to add to the containers ContainerCapDrop []string // list of kernel capabilities to remove from the containers AutoRemove bool // controls if the container is automatically removed upon workflow completion ArtifactServerPath string // the path where the artifact server stores uploads ArtifactServerPort string // the port the artifact server binds to CompositeRestrictions *model.CompositeRestrictions // describes which features are available in composite actions ForceRemoteCheckout bool }
Config contains the config for a new runner
type ExpressionEvaluator ¶
type ExpressionEvaluator interface { EvaluateYamlNode(node *yaml.Node) error Interpolate(string) string // contains filtered or unexported methods }
ExpressionEvaluator is the interface for evaluating expressions
type MappableOutput ¶
type RunContext ¶
type RunContext struct { GithubContextBase *string Name string Config *Config Matrix map[string]interface{} Run *model.Run EventJSON string Env map[string]string ExtraPath []string CurrentStep string StepResults map[string]*model.StepResult ExprEval ExpressionEvaluator JobContainer container.Container OutputMappings map[MappableOutput]MappableOutput JobName string Local bool ActionPath string ActionRef string ActionRepository string Composite *model.Action Inputs map[string]interface{} Parent *RunContext ContextData map[string]interface{} // contains filtered or unexported fields }
RunContext contains info about current job
func (*RunContext) ActionCacheDir ¶
func (rc *RunContext) ActionCacheDir() string
ActionCacheDir is for rc
func (*RunContext) Clone ¶
func (rc *RunContext) Clone() *RunContext
func (*RunContext) CompositeExecutor ¶
func (rc *RunContext) CompositeExecutor() common.Executor
Executor returns a pipeline executor for all the steps in the job
func (*RunContext) ContainerWorkdir ¶
func (rc *RunContext) ContainerWorkdir() string
Resolves the equivalent host path inside the container This is required for windows and WSL 2 to translate things like C:\Users\Myproject to /mnt/users/Myproject
func (*RunContext) Executor ¶
func (rc *RunContext) Executor() common.Executor
Executor returns a pipeline executor for all the steps in the job
func (*RunContext) GetActPath ¶
func (rc *RunContext) GetActPath() string
func (*RunContext) GetBindsAndMounts ¶
func (rc *RunContext) GetBindsAndMounts() ([]string, map[string]string)
Returns the binds and mounts for the container, resolving paths as appopriate
func (*RunContext) GetEnv ¶
func (rc *RunContext) GetEnv() map[string]string
GetEnv returns the env for the context
func (*RunContext) NewExpressionEvaluator ¶
func (rc *RunContext) NewExpressionEvaluator() ExpressionEvaluator
NewExpressionEvaluator creates a new evaluator
func (*RunContext) SetActPath ¶
func (rc *RunContext) SetActPath(actPath string)
func (*RunContext) String ¶
func (rc *RunContext) String() string
type StepContext ¶
type StepContext struct { RunContext *RunContext Step *model.Step Env map[string]string Cmd []string Cmdline string Action *model.Action Needs *model.Job }
StepContext contains info about current job
func (*StepContext) Executor ¶
func (sc *StepContext) Executor(ctx context.Context) common.Executor
Executor for a step context
func (*StepContext) NewExpressionEvaluator ¶
func (sc *StepContext) NewExpressionEvaluator() ExpressionEvaluator
NewExpressionEvaluator creates a new evaluator