runner

package
v0.6.0 Latest Latest
Warning

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

Go to latest
Published: Jul 19, 2024 License: MIT Imports: 23 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetLogger

func GetLogger(ctx context.Context) logrus.FieldLogger

func NewLogger

func NewLogger() logrus.FieldLogger

func WithLogger

func WithLogger(ctx context.Context, logger logrus.FieldLogger) context.Context

func WithLoggerComposeStepResult

func WithLoggerComposeStepResult(ctx context.Context, sr *StepResult) context.Context

func WithResult

func WithResult(ctx context.Context, result *Result) context.Context

Types

type FieldUpdater added in v0.3.0

type FieldUpdater struct {
	Secrets map[string]string
}

func NewFieldUpdater added in v0.3.0

func NewFieldUpdater(secrets map[string]string) *FieldUpdater

func (*FieldUpdater) Update added in v0.3.0

func (f *FieldUpdater) Update(field *string)

func (*FieldUpdater) UpdateImage added in v0.3.0

func (f *FieldUpdater) UpdateImage(image *models.Image) *models.Image

func (*FieldUpdater) UpdateMap added in v0.3.0

func (f *FieldUpdater) UpdateMap(data map[string]string) map[string]string

type ProjectInfo added in v0.2.0

type ProjectInfo struct {
	Path       string
	ID         string
	Name       string
	Owner      string
	OwnerID    string
	RepoID     string
	BranchName string
	CommitID   string
}

func NewProjInfo added in v0.2.0

func NewProjInfo(hostPath string) *ProjectInfo

type Result

type Result struct {
	ID          string
	EventName   string
	StepResults map[float32]*StepResult
	Status      string
	Runner      *Runner
	Artifacts   map[string]string
}

func GetResult

func GetResult(ctx context.Context) *Result

func NewResult

func NewResult(name string, r *Runner) *Result

func (*Result) AddStep

func (r *Result) AddStep(idx float32, name string, step *models.Step) *StepResult

func (*Result) GetCachePath

func (r *Result) GetCachePath() string

func (*Result) GetDuration

func (r *Result) GetDuration() time.Duration

func (*Result) GetResultPath

func (r *Result) GetResultPath() string

type Runner

type Runner struct {
	Plan       *models.Plan
	Config     *config.Config
	Info       *ProjectInfo
	Secrets    map[string]string
	CacheStore *cache.Store
}

func New

func New(projPath string, conf *config.Config, secrets map[string]string) *Runner

func (*Runner) LoadPlan

func (r *Runner) LoadPlan() error

func (*Runner) Run

func (r *Runner) Run(name string, targetBranch string)

type StepResult

type StepResult struct {
	ID        uuid.UUID
	Index     float32
	Name      string
	Step      *models.Step
	Outputs   map[string]string
	StartTime time.Time
	EndTime   time.Time
	Status    string
	Result    *Result
}

func (*StepResult) GetIdxString

func (sr *StepResult) GetIdxString() string

type Task

type Task func(ctx context.Context) error

func ChainTask

func ChainTask(tasks ...Task) Task

func NewCachesRestoreTask

func NewCachesRestoreTask(c *docker.Container, sr *StepResult) Task

func NewCachesSaveTask

func NewCachesSaveTask(c *docker.Container, sr *StepResult) Task

func NewCloneTask

func NewCloneTask(c *docker.Container) Task

func NewCmdTask

func NewCmdTask(c *docker.Container, sr *StepResult, cmd []string) Task

func NewContainerCreateTask

func NewContainerCreateTask(c *docker.Container, sr *StepResult) Task

func NewContainerDestroyTask

func NewContainerDestroyTask(c *docker.Container) Task

func NewContainerStartTask

func NewContainerStartTask(c *docker.Container) Task

func NewCreateServicesTask added in v0.3.0

func NewCreateServicesTask(c *docker.Container, sr *StepResult) Task

func NewDownloadArtifactsTask

func NewDownloadArtifactsTask(c *docker.Container, sr *StepResult) Task

func NewImagePullTask

func NewImagePullTask(c *docker.Container) Task

func NewSaveArtifactsTask

func NewSaveArtifactsTask(c *docker.Container, sr *StepResult) Task

func NewScriptTask

func NewScriptTask(c *docker.Container, sr *StepResult, scripts models.StepScript) Task

func ParallelTask

func ParallelTask(size int, tasks ...Task) Task

func WithTimeout added in v0.6.0

func WithTimeout(task Task, timeout time.Duration) Task

func (Task) Finally

func (t Task) Finally(ft Task) Task

func (Task) Then

func (t Task) Then(next Task) Task

func (Task) WithCondition added in v0.5.0

func (t Task) WithCondition(cond func() bool) Task

Jump to

Keyboard shortcuts

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