gha

package
v1.36.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 17, 2026 License: MIT Imports: 29 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ActionInput

type ActionInput struct {
	Description string      `yaml:"description"`
	Required    bool        `yaml:"required"`
	Default     interface{} `yaml:"default"`
}

type ActionMetadata

type ActionMetadata struct {
	Name    string                  `yaml:"name"`
	Inputs  map[string]ActionInput  `yaml:"inputs"`
	Outputs map[string]ActionOutput `yaml:"outputs"`
	Runs    ActionRuns              `yaml:"runs"`
}

func LoadActionMetadata

func LoadActionMetadata(actionDir string) (*ActionMetadata, string, error)

type ActionOutput

type ActionOutput struct {
	Description string `yaml:"description"`
	Value       string `yaml:"value"`
}

type ActionReference

type ActionReference struct {
	Kind     referenceKind
	Original string
	Owner    string
	Repo     string
	Path     string
	Ref      string
	Image    string
	Local    string
}

func ParseActionReference

func ParseActionReference(raw string) (ActionReference, error)

func (ActionReference) CachePath

func (ref ActionReference) CachePath() string

func (ActionReference) Repository

func (ref ActionReference) Repository() string

type ActionRuns

type ActionRuns struct {
	Using          string                `yaml:"using"`
	Main           string                `yaml:"main"`
	Pre            string                `yaml:"pre"`
	Post           string                `yaml:"post"`
	PreIf          string                `yaml:"pre-if"`
	PostIf         string                `yaml:"post-if"`
	Image          string                `yaml:"image"`
	Env            map[string]string     `yaml:"env"`
	Entrypoint     string                `yaml:"entrypoint"`
	PreEntrypoint  string                `yaml:"pre-entrypoint"`
	PostEntrypoint string                `yaml:"post-entrypoint"`
	Args           []string              `yaml:"args"`
	Steps          []CompositeActionStep `yaml:"steps"`
}

type CompositeActionStep

type CompositeActionStep struct {
	ID               string                 `yaml:"id"`
	Name             string                 `yaml:"name"`
	Run              string                 `yaml:"run"`
	Uses             string                 `yaml:"uses"`
	With             map[string]interface{} `yaml:"with"`
	Env              map[string]interface{} `yaml:"env"`
	Shell            string                 `yaml:"shell"`
	WorkingDirectory string                 `yaml:"working-directory"`
	If               string                 `yaml:"if"`
	ContinueOnError  bool                   `yaml:"continue-on-error"`
}

type Engine

type Engine struct {
	// contains filtered or unexported fields
}

func NewEngine

func NewEngine(options Options) *Engine

func (*Engine) Cleanup

func (e *Engine) Cleanup(ctx ExecContext) error

func (*Engine) FinalizeJob

func (e *Engine) FinalizeJob(ctx ExecContext, job model.PlanJob) (string, error)

func (*Engine) Prepare

func (e *Engine) Prepare(ctx ExecContext) error

func (*Engine) RunStep

func (e *Engine) RunStep(ctx ExecContext, job model.PlanJob, step model.PlanStep) (string, error)

type EvaluationInput

type EvaluationInput struct {
	Github    *actmodel.GithubContext
	Env       map[string]string
	JobStatus string
	Steps     map[string]*actmodel.StepResult
	Runner    map[string]interface{}
	Secrets   map[string]string
	Vars      map[string]string
	Inputs    map[string]interface{}
	Needs     map[string]actexpr.Needs
}

type Evaluator

type Evaluator struct {
	// contains filtered or unexported fields
}

func NewEvaluator

func NewEvaluator(input EvaluationInput) *Evaluator

func (*Evaluator) EvalBool

func (e *Evaluator) EvalBool(input string, defaultStatusCheck actexpr.DefaultStatusCheck) (bool, error)

func (*Evaluator) Evaluate

func (e *Evaluator) Evaluate(input string, defaultStatusCheck actexpr.DefaultStatusCheck) (interface{}, error)

func (*Evaluator) Interpolate

func (e *Evaluator) Interpolate(input string) string

type ExecContext

type ExecContext struct {
	Context      context.Context
	WorkspaceDir string
	WorkDir      string
	BaseEnv      map[string]string
	JobEnv       map[string]string
	StepEnv      map[string]string
	Env          map[string]string
}

type FileCommandResult

type FileCommandResult struct {
	Env     map[string]string
	Outputs map[string]string
	State   map[string]string
	Paths   []string
	Summary string
}

type Options

type Options struct {
	CacheDir     string
	ToolCacheDir string
	HTTPClient   *http.Client
}

type StepFiles

type StepFiles struct {
	HostDir          string
	HostEnv          string
	HostOutput       string
	HostPath         string
	HostState        string
	HostSummary      string
	ContainerEnv     string
	ContainerOutput  string
	ContainerPath    string
	ContainerState   string
	ContainerSummary string
}

func NewStepFiles

func NewStepFiles(root string) (StepFiles, error)

func (StepFiles) Parse

func (files StepFiles) Parse() (FileCommandResult, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL