Documentation
¶
Index ¶
- Constants
- func WithJobLogger(ctx context.Context, jobName string, secrets map[string]string, ...) context.Context
- type Config
- type ExpressionEvaluator
- type MappableOutput
- type RunContext
- func (rc *RunContext) ActionCacheDir() string
- func (rc *RunContext) EvalBool(expr string) (bool, error)
- func (rc *RunContext) Executor() common.Executor
- func (rc *RunContext) GetBindsAndMounts() ([]string, map[string]string)
- func (rc *RunContext) GetEnv() map[string]string
- func (rc *RunContext) NewExpressionEvaluator() ExpressionEvaluator
- func (rc *RunContext) String() string
- type Runner
- type StepContext
Constants ¶
const ActPath string = "/var/run/act"
Variables ¶
This section is empty.
Functions ¶
Types ¶
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
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"
ArtifactServerPath string // the path where the artifact server stores uploads
ArtifactServerPort string // the port the artifact server binds to
}
Config contains the config for a new runner
func (*Config) ContainerWorkdir ¶
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
type ExpressionEvaluator ¶
type ExpressionEvaluator interface {
Evaluate(string) (string, bool, error)
Interpolate(string) string
InterpolateWithStringCheck(string) (string, bool)
Rewrite(string) string
}
ExpressionEvaluator is the interface for evaluating expressions
type MappableOutput ¶
type RunContext ¶
type RunContext struct {
Name string
Config *Config
Matrix map[string]interface{}
Run *model.Run
EventJSON string
Env map[string]string
ExtraPath []string
CurrentStep string
StepResults map[string]*stepResult
ExprEval ExpressionEvaluator
JobContainer container.Container
OutputMappings map[MappableOutput]MappableOutput
JobName string
}
RunContext contains info about current job
func (*RunContext) ActionCacheDir ¶
func (rc *RunContext) ActionCacheDir() string
ActionCacheDir is for rc
func (*RunContext) EvalBool ¶
func (rc *RunContext) EvalBool(expr string) (bool, error)
EvalBool evaluates an expression against current run context
func (*RunContext) Executor ¶
func (rc *RunContext) Executor() common.Executor
Executor returns a pipeline executor for all the steps in the job
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) String ¶
func (rc *RunContext) String() string
type StepContext ¶
type StepContext struct {
RunContext *RunContext
Step *model.Step
Env map[string]string
Cmd []string
Action *model.Action
}
StepContext contains info about current job
func (*StepContext) Executor ¶
func (sc *StepContext) Executor() common.Executor
Executor for a step context
func (*StepContext) NewExpressionEvaluator ¶
func (sc *StepContext) NewExpressionEvaluator() ExpressionEvaluator
NewExpressionEvaluator creates a new evaluator