Documentation
¶
Index ¶
- Constants
- Variables
- func ExtractDepsFromTemplate(tmplStr string) ([]string, error)
- func ValidateGraphFlavor(flavor string) error
- type Dependency
- type Node
- type Options
- type Pipeline
- func (p *Pipeline) GetTargetsIDByResult(targetIDs []string) (...)
- func (p *Pipeline) Graph(flavor string) error
- func (p *Pipeline) Init(config *config.Config, options Options) error
- func (p *Pipeline) Run() error
- func (p *Pipeline) RunActions() error
- func (p *Pipeline) RunCleanActions() error
- func (p *Pipeline) RunCondition(id string) (r string, err error)
- func (p *Pipeline) RunSource(id string) (r string, err error)
- func (p *Pipeline) RunTarget(id string) (r string, changed bool, err error)
- func (p *Pipeline) SortedResources() (result *dag.DAG, err error)
- func (p *Pipeline) String() string
- func (p *Pipeline) Update() error
Constants ¶
const ( GraphFlavorDot = "dot" GraphFlavorMermaid = "mermaid" )
Define constants for valid GraphFlavor values
Variables ¶
var ( // ErrNotValidDependsOn is triggered when we define a nonexistent depends on value. ErrNotValidDependsOn = errors.New("no valid depends_on value") // ErrDependsOnLoopDetected is triggered when we define a dependency loop. ErrDependsOnLoopDetected = errors.New("dependency loop detected") )
var ( // CheckedPipelines is used to avoid checking the same action multiple times across different pipelines CheckedPipelines []string )
var ( // ErrRunTargets is return when at least one error happened during targets execution ErrRunTargets error = errors.New("something went wrong during target execution") )
Functions ¶
func ExtractDepsFromTemplate ¶ added in v0.86.0
ExtractCustomKeys parses a Go template and extracts custom keys from specific template actions: {{ source "sourceId" }}, {{ condition "conditionid" }}, and {{ target "targetid" }}. It returns a map where the keys are the action types ("source", "condition", "target") and the values are slices of strings representing the IDs extracted from the corresponding actions in the template.
func ValidateGraphFlavor ¶ added in v0.88.0
ValidateGraphFlavor checks if the GraphFlavor value is valid
Types ¶
type Dependency ¶ added in v0.86.0
type Pipeline ¶
type Pipeline struct { // Name defines a pipeline name, used to improve human visualization Name string // ID allows to identify a full pipeline run, this value is propagated into each target if not defined at that level ID string // Sources contains all sources defined in the configuration Sources map[string]source.Source // Conditions contains all conditions defined in the configuration Conditions map[string]condition.Condition // Targets contains all targets defined in the configuration Targets map[string]target.Target // SCMs contains all scms defined in the configuration SCMs map[string]scm.Scm // Actions contains all actions defined in the configuration Actions map[string]action.Action // Report contains the pipeline report Report reports.Report // Options contains all updatecli options for this specific pipeline Options Options // Config contains the pipeline configuration defined by the user Config *config.Config // contains filtered or unexported fields }
Pipeline represent an updatecli run for a specific configuration
func (*Pipeline) GetTargetsIDByResult ¶ added in v0.17.0
func (p *Pipeline) GetTargetsIDByResult(targetIDs []string) ( failedTargetsID, attentionTargetsID, successTargetsID, skippedTargetsID []string)
GetTargetsIDByResult return a list of target ID per result type
func (*Pipeline) RunActions ¶ added in v0.40.0
RunActions runs all actions defined in the configuration.
func (*Pipeline) RunCleanActions ¶ added in v0.76.1
RunCleanActions executes clean up operation which depends on the action plugin.
func (*Pipeline) RunCondition ¶ added in v0.86.0
func (*Pipeline) SortedResources ¶ added in v0.86.0
SortedResources return a list of resources by building a DAG