Help us shape the future of Go! Take the 2026 Go Developer Survey

recipe

package
v0.0.113 Latest Latest
Warning

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

Go to latest
Published: Oct 30, 2026 License: Apache-2.0 Imports: 21 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ChildGroupStartOpType           = "recipe.child_group.start"
	ChildGroupRunAndGetResultOpType = "recipe.child_group.run_and_get_result"
)

Variables

This section is empty.

Functions

func GetOps

func GetOps() []ops.RegisterableOp

Types

type AwaitResultSoftInput added in v0.0.24

type AwaitResultSoftInput struct {
	Target       WaitTarget `json:"target"`
	Wait         WaitPolicy `json:"wait,omitempty"`
	ReturnWhen   string     `json:"return_when,omitempty"`
	Timeout      string     `json:"timeout,omitempty"`
	PollInterval string     `json:"poll_interval,omitempty"`
}

type ChildGroupAggregateConfig added in v0.0.24

type ChildGroupAggregateConfig struct {
	Shape    string `json:"shape,omitempty"`
	Artifact string `json:"artifact,omitempty"`
}

type ChildGroupChildRecord added in v0.0.24

type ChildGroupChildRecord struct {
	TenantID    string                         `json:"tenant_id,omitempty"`
	GoalFailure *jobdb.GoalFailure             `json:"goal_failure,omitempty"`
	GoalID      string                         `json:"goal_id,omitempty"`
	Result      ResultSource                   `json:"result"`
	Wait        WaitPolicy                     `json:"wait,omitempty"`
	Key         string                         `json:"key,omitempty"`
	Index       int                            `json:"index,omitempty"`
	Recipe      string                         `json:"recipe,omitempty"`
	CellName    string                         `json:"cell_name,omitempty"`
	Required    bool                           `json:"required"`
	Status      string                         `json:"status,omitempty"`
	JobID       string                         `json:"job_id,omitempty"`
	Outputs     map[string]interface{}         `json:"outputs,omitempty"`
	Artifacts   map[string]recipeartifacts.Ref `json:"artifacts,omitempty"`
	Error       string                         `json:"error,omitempty"`
	SkipReason  string                         `json:"skip_reason,omitempty"`
}

type ChildGroupChildSpec added in v0.0.24

type ChildGroupChildSpec struct {
	Wait       *WaitPolicy            `json:"wait,omitempty"`
	Key        string                 `json:"key,omitempty"`
	Index      int                    `json:"index,omitempty"`
	Recipe     string                 `json:"recipe,omitempty"`
	CellName   string                 `json:"cell_name,omitempty"`
	Required   bool                   `json:"required"`
	Skipped    bool                   `json:"skipped,omitempty"`
	SkipReason string                 `json:"skip_reason,omitempty"`
	GitRef     string                 `json:"git_ref,omitempty"`
	Inputs     map[string]interface{} `json:"inputs,omitempty" secret:"forward"`
	Artifacts  []recipeartifacts.Ref  `json:"artifacts,omitempty"`
}

type ChildGroupOutput added in v0.0.24

type ChildGroupOutput struct {
	ChildGoalIDs         []string                       `json:"child_goal_ids"`
	RequiredChildGoalIDs []string                       `json:"required_child_goal_ids"`
	OptionalChildGoalIDs []string                       `json:"optional_child_goal_ids"`
	FailedChildGoalIDs   []string                       `json:"failed_child_goal_ids"`
	Ok                   bool                           `json:"ok"`
	Mode                 string                         `json:"mode,omitempty"`
	ChildJobIDs          []string                       `json:"child_job_ids,omitempty"`
	RequiredChildJobIDs  []string                       `json:"required_child_job_ids,omitempty"`
	OptionalChildJobIDs  []string                       `json:"optional_child_job_ids,omitempty"`
	FailedChildJobIDs    []string                       `json:"failed_child_job_ids,omitempty"`
	Children             []ChildGroupChildRecord        `json:"children,omitempty"`
	Summary              ChildGroupSummary              `json:"summary"`
	Aggregate            map[string]interface{}         `json:"aggregate,omitempty"`
	Warnings             []map[string]interface{}       `json:"warnings,omitempty"`
	BlockingIssues       []map[string]interface{}       `json:"blocking_issues,omitempty"`
	AggregateArtifact    string                         `json:"aggregate_artifact,omitempty"`
	Artifacts            map[string]recipeartifacts.Ref `json:"artifacts,omitempty"`
}

type ChildGroupStartInput added in v0.0.24

type ChildGroupStartInput struct {
	Wait      WaitPolicy                `json:"wait,omitempty"`
	Mode      string                    `json:"mode,omitempty"`
	GitRef    string                    `` /* 128-byte string literal not displayed */
	Children  []ChildGroupChildSpec     `json:"children,omitempty"`
	Aggregate ChildGroupAggregateConfig `json:"aggregate,omitempty"`
}

type ChildGroupStepState added in v0.0.24

type ChildGroupStepState struct {
	Mode      string                    `json:"mode,omitempty"`
	GitRef    string                    `json:"git_ref,omitempty"`
	Children  []ChildGroupChildRecord   `json:"children,omitempty"`
	Aggregate ChildGroupAggregateConfig `json:"aggregate,omitempty"`
}

type ChildGroupSummary added in v0.0.24

type ChildGroupSummary struct {
	Total          int `json:"total"`
	Started        int `json:"started"`
	Completed      int `json:"completed"`
	Failed         int `json:"failed"`
	FailedRequired int `json:"failed_required"`
	FailedOptional int `json:"failed_optional"`
	Skipped        int `json:"skipped"`
	StartFailed    int `json:"start_failed"`
	Required       int `json:"required"`
	Optional       int `json:"optional"`
}

type ChildStatusOutput added in v0.0.24

type ChildStatusOutput struct {
	GoalID                    string                         `json:"goal_id,omitempty"`
	GoalState                 jobdb.GoalState                `json:"goal_state,omitempty"`
	Result                    ResultSource                   `json:"result"`
	GoalFailure               *jobdb.GoalFailure             `json:"goal_failure,omitempty"`
	JobID                     string                         `json:"job_id"`
	Terminal                  bool                           `json:"terminal"`
	Status                    string                         `json:"status"`
	FailureKind               string                         `json:"failure_kind,omitempty"`
	FailureMessage            string                         `json:"failure_message,omitempty"`
	Outputs                   map[string]interface{}         `json:"outputs,omitempty"`
	Artifacts                 map[string]recipeartifacts.Ref `json:"artifacts,omitempty"`
	PartialOutputsAvailable   bool                           `json:"partial_outputs_available"`
	PartialArtifactsAvailable bool                           `json:"partial_artifacts_available"`
	StartedAt                 string                         `json:"started_at,omitempty"`
	FinishedAt                string                         `json:"finished_at,omitempty"`
}

type MultipleRecipeOutput

type MultipleRecipeOutput struct {
	Outputs []SingleRecipeOutput `json:"outputs"`
}

type MultipleRecipes

type MultipleRecipes struct {
	Wait    WaitPolicy     `json:"wait,omitempty"`
	GitRef  string         `` /* 138-byte string literal not displayed */
	Recipes []SingleRecipe `json:"recipes"`
}

type ResultInput added in v0.0.94

type ResultInput struct {
	Target WaitTarget `json:"target"`
	Wait   WaitPolicy `json:"wait,omitempty"`
}

type ResultSource added in v0.0.94

type ResultSource struct {
	Goal string `json:"goal,omitempty"`
	Job  string `json:"job"`
}

type SingleRecipe

type SingleRecipe struct {
	Wait      WaitPolicy             `json:"wait,omitempty"`
	Name      string                 `json:"name" validate:"required"`
	CellName  string                 `json:"cell_name,omitempty" default:"{{ context.workspace.cell }}"`
	Inputs    map[string]interface{} `json:"inputs" secret:"forward"`
	Artifacts []recipeartifacts.Ref  `json:"artifacts"`
	Git       SingleRecipeGit        `json:"git"`
}

RecipeInput defines the input for recipe activities

type SingleRecipeGit

type SingleRecipeGit struct {
	BaseRepo string `json:"base_repo,omitempty" default:"{{ context.git.repo }}"`
	BaseRef  string `json:"base_ref,omitempty" default:"{{ context.git.ref }}"`
	BaseHash string `json:"base_hash,omitempty" default:"{{ context.git.resolved_hash }}"`
	Author   string `json:"author,omitempty" default:"{{ context.git.author }}"`
}

type SingleRecipeOutput

type SingleRecipeOutput struct {
	Result    ResultSource                   `json:"result"`
	Outputs   map[string]interface{}         `json:"outputs"`
	Artifacts map[string]recipeartifacts.Ref `json:"artifacts,omitempty"`
	GitResult contextual.GitCommitContext    `json:"git,omitempty"`
}

type SingleRecipeWithRef

type SingleRecipeWithRef struct {
	SingleRecipe `json:",squash"`
	GitRef       string `` /* 138-byte string literal not displayed */
}

type StartedJob

type StartedJob struct {
	Result   *ResultSource `json:"result,omitempty"`
	JobID    string        `json:"job_id"`
	GoalID   string        `json:"goal_id"`
	TenantID string        `json:"tenant_id"`
	Target   WaitTarget    `json:"target,omitempty"`
	Wait     WaitPolicy    `json:"wait,omitempty"`
}

type StartedJobs

type StartedJobs struct {
	GoalIDs []string     `json:"goal_ids"`
	Items   []StartedJob `json:"items"`
	Wait    WaitPolicy   `json:"wait,omitempty"`
	JobIDs  []string     `json:"job_ids"`
}

type WaitPolicy added in v0.0.94

type WaitPolicy struct {
	On        string `json:"on,omitempty"`
	Condition string `json:"condition,omitempty"`
}

type WaitTarget added in v0.0.94

type WaitTarget struct {
	Job  string `json:"job,omitempty"`
	Goal string `json:"goal,omitempty"`
}

Jump to

Keyboard shortcuts

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