Documentation
¶
Index ¶
- type Abort
- type Arch
- type Barrier
- type Cache
- type Clone
- type CloneStage
- type Config
- type Container
- type Credentials
- type CredentialsAWS
- type Default
- type Durationorslice
- type EmptySpec
- type Expr
- type Failure
- type FailureAction
- type FailureList
- type For
- type Ignore
- type Input
- type InputItems
- type ManualIntervention
- type Matrix
- type MemStringorInt
- type Mount
- type OS
- type Pipeline
- type Platform
- type PluginStage
- type PluginStep
- type Reference
- type Registry
- type RegistryConnector
- type Report
- type Repository
- type Resource
- type Resources
- type Retry
- type RetryFailure
- type RetryFailureAction
- type Runtime
- type RuntimeCloud
- type RuntimeKube
- type RuntimeMachine
- type RuntimeVM
- type Splitting
- type Stage
- type StageCD
- type StageCI
- type StageCustom
- type StageFlag
- type StageGroup
- type StageInfra
- type StageParallel
- type StageTemplate
- type Status
- type StatusStage
- type Step
- type StepAction
- type StepBackground
- type StepBarrier
- type StepBitrise
- type StepExec
- type StepGroup
- type StepJenkins
- type StepParallel
- type StepPlugin
- type StepRun
- type StepTemplate
- type StepTest
- type Strategy
- type StringorInt
- type Stringorslice
- type TemplateStage
- type TemplateStep
- type TimeoutAction
- type VarType
- type Variable
- type Volume
- type VolumeClaim
- type VolumeConfigMap
- type VolumeHost
- type VolumeTemp
- type When
- type While
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Arch ¶
type Arch int
List of cpu architectures.
const ( ArchNone Arch = iota ArchAmd64 ArchArm ArchArm64 Arch386 ArchPpc ArchPpc64 ArchPpc64le ArchRiscv ArchRiscv64 ArchS390 ArchS390x ArchSparc ArchSparc64 )
Arch enumeration.
func (Arch) MarshalJSON ¶
MarshalJSON marshals the type as a JSON string.
func (*Arch) UnmarshalJSON ¶
UnmarshalJSON unmashals a quoted json string to the enum value.
type Cache ¶
type Cache struct {
Enabled bool `json:"enabled,omitempty"`
Paths []string `json:"paths,omitempty"`
Key string `json:"key,omitempty"`
Policy string `json:"policy,omitempty"`
}
Cache defines pipeline caching behavior.
type Clone ¶
type Clone struct {
Depth int64 `json:"depth,omitempty"`
Disabled bool `json:"disabled,omitempty"`
Insecure bool `json:"insecure,omitempty"`
Strategy string `json:"strategy,omitempty"`
Trace bool `json:"trace,omitempty"`
Ref *Reference `json:"ref,omitempty"`
}
Clone defines the clone behavior.
type CloneStage ¶
type CloneStage struct {
Depth int64 `json:"depth,omitempty"`
Disabled bool `json:"disabled,omitempty"`
Insecure bool `json:"insecure,omitempty"`
Strategy string `json:"strategy,omitempty"`
Trace bool `json:"trace,omitempty"`
}
Clone defines the stage clone behavior.
type Config ¶
type Config struct {
Version StringorInt `json:"version,omitempty"`
Kind string `json:"kind,omitempty"`
Type string `json:"type,omitempty"`
Name string `json:"name,omitempty"`
Spec interface{} `json:"spec,omitempty"`
}
Config defines the a resource configuration.
func ParseBytes ¶
ParseBytes parses the configuration from bytes b.
func ParseString ¶
ParseString parses the configuration from string s.
func (*Config) UnmarshalJSON ¶
UnmarshalJSON implement the json.Unmarshaler interface.
type Container ¶
type Container struct {
Image string `json:"image,omitempty"`
Connector string `json:"connector,omitempty"`
Credentials *Credentials `json:"credentials,omitempty"`
Pull string `json:"pull,omitempty"`
Entrypoint string `json:"entrypoint,omitempty"`
Args []string `json:"args,omitempty"`
Dns Stringorslice `json:"dns,omitempty"`
DsnSearch Stringorslice `json:"dsn_search,omitempty"`
ExtraHosts Stringorslice `json:"extra_hosts,omitempty"`
Network string `json:"network,omitempty"`
NetworkMode string `json:"network_mode,omitempty"`
Privileged bool `json:"privileged,omitempty"`
Workdir string `json:"workdir,omitempty"`
Ports []string `json:"ports,omitempty"`
Volumes []string `json:"volumes,omitempty"`
User string `json:"user,omitempty"`
Group string `json:"group,omitempty"`
Cpu StringorInt `json:"cpu,omitempty"`
Memory MemStringorInt `json:"memory,omitempty"`
ShmSize MemStringorInt `json:"shm_size,omitempty"`
}
func (*Container) UnmarshalJSON ¶
UnmarshalJSON implement the json.Unmarshaler interface.
type Credentials ¶
type Credentials struct {
Username string `json:"username,omitempty"`
Password string `json:"password,omitempty"`
Aws *CredentialsAWS `json:"aws,omitempty"`
}
Configures registry credentials.
type CredentialsAWS ¶
type CredentialsAWS struct {
AccessKey string `json:"access_key,omitempty"`
SecretKey string `json:"secret_key,omitempty"`
}
Configures AWS credentials.
type Default ¶
type Default struct {
Clone *Clone `json:"clone,omitempty"`
Repository *Repository `json:"repository,omitempty"`
Registry *Registry `json:"registry,omitempty"`
Resources *Resources `json:"resources,omitempty"`
Delegate Stringorslice `json:"delegate,omitempty"`
Barriers []*Barrier `json:"barriers,omitempty"`
Status *Status `json:"status,omitempty"`
Timeout string `json:"timeout,omitempty"`
Envs map[string]string `json:"envs,omitempty"`
}
type Durationorslice ¶
Durationorslice represents a duration string or an array of duration strings.
func (*Durationorslice) UnmarshalJSON ¶
func (s *Durationorslice) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the unmarshal interface.
type Expr ¶
type Expr struct {
Eq string `json:"eq,omitempty"`
In []string `json:"in,omitempty"`
Not *Expr `json:"not,omitempty"`
}
Expr defines an execution expression.
type Failure ¶
type Failure struct {
Errors []string `json:"errors,omitempty"`
Action *FailureAction `json:"action,omitempty"`
}
type FailureAction ¶
type FailureAction struct {
Type string `json:"type,omitempty"`
Spec interface{} `json:"spec,omitempty"`
}
Failure defines a failure strategy.
func (*FailureAction) UnmarshalJSON ¶
func (v *FailureAction) UnmarshalJSON(data []byte) error
UnmarshalJSON implement the json.Unmarshaler interface.
type FailureList ¶
type FailureList struct {
Items []*Failure `json:"failure,omitempty"`
}
func (*FailureList) MarshalJSON ¶
func (v *FailureList) MarshalJSON() ([]byte, error)
MarshalJSON implements the marshal interface.
func (*FailureList) UnmarshalJSON ¶
func (v *FailureList) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the unmarshal interface.
type For ¶
type For struct {
Concurrency int64 `json:"concurrency,omitempty"`
Iterations int64 `json:"iterations,omitempty"`
}
Defines a for loop execution strategy.
type Input ¶
type Input struct {
Type string `json:"type,omitempty"`
Description string `json:"description,omitempty"`
Default interface{} `json:"default,omitempty"`
Required bool `json:"required,omitempty"`
Items *InputItems `json:"items,omitempty"`
Enum []string `json:"enum,omitempty"`
Mask bool `json:"mask,omitempty"`
}
Input defines an input parameter.
type InputItems ¶
type InputItems struct {
Type string `json:"type,omitempty"`
}
InputItems defines an array input type
type ManualIntervention ¶
type ManualIntervention struct {
TimeoutAction *TimeoutAction `json:"timeout_action,omitempty"`
Timeout time.Duration `json:"timeout,omitempty"`
}
type Matrix ¶
type Matrix struct {
Axis map[string][]string `json:"axis,omitempty"`
Concurrency int64 `json:"concurrency,omitempty"`
Include []map[string]string `json:"include,omitempty"`
Exclude []map[string]string `json:"exclude,omitempty"`
}
Defines a matrix execution strategy.
type MemStringorInt ¶
type MemStringorInt int64
MemStringorInt represents a string or an integer the String supports notations like 10m for then Megabyte of memory
func (*MemStringorInt) UnmarshalJSON ¶
func (s *MemStringorInt) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the unmarshal interface.
type Mount ¶
type Mount struct {
Name string `json:"name,omitempty"`
Path string `json:"path,omitempty"`
SubPath string `json:"subPath,omitempty"`
ReadOnly bool `json:"readOnly,omitempty"`
}
Mount defines a volume mount.
type OS ¶
type OS int
List of operating systems.
const ( OSNone OS = iota OSLinux OSWindows OSMacos OSDarwin OSDragonfly OSFreebsd OSNetbsd OSOpenbsd OSPlan9 OSSolaris )
OS enumeration.
func (OS) MarshalJSON ¶
MarshalJSON marshals the type as a JSON string.
func (*OS) UnmarshalJSON ¶
UnmarshalJSON unmashals a quoted json string to the enum value.
type Pipeline ¶
type Pipeline struct {
Stages []*Stage `json:"stages,omitempty"`
Inputs map[string]*Input `json:"inputs,omitempty"`
Options *Default `json:"options,omitempty"`
}
Pipeline defines the pipeline execution.
type Platform ¶
type Platform struct {
Arch string `json:"arch,omitempty"`
Features []string `json:"features,omitempty"`
Os string `json:"os,omitempty"`
Variant string `json:"variant,omitempty"`
Version string `json:"version,omitempty"`
}
Platform defines the target execution environment.
type PluginStage ¶
type PluginStage struct {
Name string `json:"name,omitempty"`
Description string `json:"description,omitempty"`
Stage *Stage `json:"stage,omitempty"`
Inputs map[string]*Input `json:"inputs,omitempty"`
}
PluginStage defines a stage-level plugin
type PluginStep ¶
type PluginStep struct {
Name string `json:"name,omitempty"`
Description string `json:"description,omitempty"`
Step *Step `json:"step,omitempty"`
Inputs map[string]*Input `json:"inputs,omitempty"`
}
PluginStep defines a step-level plugin
type Reference ¶
type Reference struct {
Name string `json:"name,omitempty"`
Type string `json:"type,omitempty"`
Sha string `json:"sha,omitempty"`
}
Reference defines a git clone reference.
type Registry ¶
type Registry struct {
Connector []*RegistryConnector `json:"connector,omitempty"`
Mirror Stringorslice `json:"mirror,omitempty"`
}
Registry provides container registry details.
func (*Registry) UnmarshalJSON ¶
UnmarshalJSON implement the json.Unmarshaler interface.
type RegistryConnector ¶
type RegistryConnector struct {
Name string `json:"name,omitempty"`
Match string `json:"match,omitempty"`
}
RegistryConnector provides registry credentials.
func (*RegistryConnector) UnmarshalJSON ¶
func (v *RegistryConnector) UnmarshalJSON(data []byte) error
UnmarshalJSON implement the json.Unmarshaler interface.
type Report ¶
type Report struct {
Path Stringorslice `json:"path,omitempty"`
Type string `json:"type,omitempty"`
}
Report defines a report artifact.
type Repository ¶
type Repository struct {
Connector string `json:"connector,omitempty"`
Name string `json:"name,omitempty"`
}
Repository defines a remote git repository.
type Resource ¶
type Resource struct {
Cpu StringorInt `json:"cpu,omitempty"`
Memory MemStringorInt `json:"memory,omitempty"`
}
Resource defines the system resources.
type Resources ¶
type Resources struct {
Limits *Resource `json:"limits,omitempty"`
Requests *Resource `json:"requests,omitempty"`
}
Defines the container resource request and limits.
type Retry ¶
type Retry struct {
Attempts int64 `json:"attempts,omitempty"`
Interval Durationorslice `json:"interval,omitempty"`
Failure *RetryFailure `json:"failure,omitempty"`
}
type RetryFailure ¶
type RetryFailure struct {
Action *RetryFailureAction `json:"action,omitempty"`
}
type RetryFailureAction ¶
type RetryFailureAction struct {
Type string `json:"type,omitempty"`
Spec interface{} `json:"spec,omitempty"`
}
Failure action on failure for all retries
func (*RetryFailureAction) UnmarshalJSON ¶
func (v *RetryFailureAction) UnmarshalJSON(data []byte) error
UnmarshalJSON implement the json.Unmarshaler interface.
type Runtime ¶
type Runtime struct {
Type string `json:"type,omitempty"`
Spec interface{} `json:"spec,omitempty"`
}
Defines the runtime execution engine.
func (*Runtime) UnmarshalJSON ¶
UnmarshalJSON implement the json.Unmarshaler interface.
type RuntimeCloud ¶
type RuntimeCloud struct {
Size string `json:"size,omitempty"`
}
type RuntimeKube ¶
type RuntimeKube struct {
Connector string `json:"connector,omitempty"`
Namespace string `json:"namespace,omitempty"`
Annotations map[string]string `json:"annotations,omitempty"`
Labels map[string]string `json:"labels,omitempty"`
Resources *Resources `json:"resources,omitempty"`
MountServiceToken bool `json:"mount_service_token,omitempty"`
ServiceAccount string `json:"service_account,omitempty"`
SecurityContext string `json:"security_context,omitempty"`
PriorityClass string `json:"priority_class,omitempty"`
InitTimeout time.Duration `json:"init_timeout,omitempty"`
User string `json:"user,omitempty"`
ImagePullSecrets []string `json:"image_pull_secrets,omitempty"`
Node string `json:"node,omitempty"`
NodeSelector map[string]string `json:"node_selector,omitempty"`
Tolerations map[string]interface{} `json:"tolerations,omitempty"`
}
type RuntimeMachine ¶
type RuntimeMachine struct {
}
type Stage ¶
type Stage struct {
Desc string `json:"desc,omitempty"`
Id string `json:"id,omitempty"`
Name string `json:"name,omitempty"`
Strategy *Strategy `json:"strategy,omitempty"`
Delegate Stringorslice `json:"delegate,omitempty"`
Status *StatusStage `json:"status,omitempty"`
Type string `json:"type,omitempty"`
When *When `json:"when,omitempty"`
Failure *FailureList `json:"failure,omitempty"`
Inputs map[string]interface{} `json:"inputs,omitempty"`
Spec interface{} `json:"spec,omitempty"`
}
func (*Stage) UnmarshalJSON ¶
UnmarshalJSON implement the json.Unmarshaler interface.
type StageCI ¶
type StageCI struct {
Cache *Cache `json:"cache,omitempty"`
Clone *CloneStage `json:"clone,omitempty"`
Platform *Platform `json:"platform,omitempty"`
Runtime *Runtime `json:"runtime,omitempty"`
Steps []*Step `json:"steps,omitempty"`
Envs map[string]string `json:"envs,omitempty"`
Volumes []*Volume `json:"volumes,omitempty"`
Vars []*Variable `json:"vars,omitempty"`
}
type StageCustom ¶
type StageGroup ¶
type StageGroup struct {
Stages []*Stage `json:"stages,omitempty"`
}
type StageInfra ¶
type StageInfra struct {
Stack string `json:"stack,omitempty"`
Workflow string `json:"workflow,omitempty"`
Clone *Clone `json:"clone,omitempty"`
Platform *Platform `json:"platform,omitempty"`
Runtime *Runtime `json:"runtime,omitempty"`
Steps []*Step `json:"steps,omitempty"`
Envs map[string]string `json:"envs,omitempty"`
Vars []*Variable `json:"vars,omitempty"`
}
type StageParallel ¶
type StageParallel struct {
Stages []*Stage `json:"stages,omitempty"`
}
type StageTemplate ¶
type StageTemplate struct {
Name string `json:"name,omitempty"`
Inputs map[string]interface{} `json:"inputs,omitempty"`
}
Configures a Stage Template step.
type StatusStage ¶
type Step ¶
type Step struct {
Id string `json:"id,omitempty"`
Name string `json:"name,omitempty"`
Desc string `json:"desc,omitempty"`
Type string `json:"type,omitempty"`
Timeout string `json:"timeout,omitempty"`
Strategy *Strategy `json:"strategy,omitempty"`
When *When `json:"when,omitempty"`
Failure *FailureList `json:"failure,omitempty"`
Inputs map[string]interface{} `json:"inputs,omitempty"`
Spec interface{} `json:"spec,omitempty"`
}
func (*Step) UnmarshalJSON ¶
UnmarshalJSON implement the json.Unmarshaler interface.
type StepAction ¶
type StepBackground ¶
type StepBackground struct {
Shell string `json:"shell,omitempty"`
Envs map[string]string `json:"envs,omitempty"`
Run string `json:"run,omitempty"`
Script Stringorslice `json:"script,omitempty"`
Container *Container `json:"container,omitempty"`
Mount []*Mount `json:"mount,omitempty"`
Image string `json:"image,omitempty"`
User string `json:"user,omitempty"`
Pull string `json:"pull,omitempty"`
Entrypoint string `json:"entrypoint,omitempty"`
Args []string `json:"args,omitempty"`
Ports []string `json:"ports,omitempty"`
Network string `json:"network,omitempty"`
Privileged bool `json:"privileged,omitempty"`
Resources *Resources `json:"resources,omitempty"`
Workdir string `json:"workdir,omitempty"`
}
type StepBarrier ¶
type StepBarrier struct {
Ref string `json:"ref,omitempty"`
}
type StepBitrise ¶
type StepExec ¶
type StepExec struct {
Image string `json:"image,omitempty"`
Connector string `json:"connector,omitempty"`
User string `json:"user,omitempty"`
Group string `json:"group,omitempty"`
Pull string `json:"pull,omitempty"`
Shell string `json:"shell,omitempty"`
Envs map[string]string `json:"envs,omitempty"`
Run string `json:"run,omitempty"`
Entrypoint string `json:"entrypoint,omitempty"`
Args []string `json:"args,omitempty"`
Privileged bool `json:"privileged,omitempty"`
Network string `json:"network,omitempty"`
Reports []*Report `json:"reports,omitempty"`
Outputs []string `json:"outputs,omitempty"`
Resources *Resources `json:"resources,omitempty"`
Mount []*Mount `json:"mount,omitempty"`
}
type StepJenkins ¶
type StepParallel ¶
type StepParallel struct {
Steps []*Step `json:"steps,omitempty"`
}
type StepPlugin ¶
type StepPlugin struct {
Image string `json:"image,omitempty"`
Name string `json:"name,omitempty"`
Uses string `json:"uses,omitempty"`
Connector string `json:"connector,omitempty"`
Pull string `json:"pull,omitempty"`
Envs map[string]string `json:"envs,omitempty"`
Reports []*Report `json:"reports,omitempty"`
Privileged bool `json:"privileged,omitempty"`
User string `json:"user,omitempty"`
Group string `json:"group,omitempty"`
Network string `json:"network,omitempty"`
With map[string]interface{} `json:"with,omitempty"`
Inputs map[string]interface{} `json:"inputs,omitempty"`
Outputs []string `json:"outputs,omitempty"`
Resources *Resources `json:"resources,omitempty"`
Mount []*Mount `json:"mount,omitempty"`
}
type StepRun ¶
type StepRun struct {
Shell string `json:"shell,omitempty"`
Script Stringorslice `json:"script,omitempty"`
Container *Container `json:"container,omitempty"`
Envs map[string]string `json:"envs,omitempty"`
Reports []*Report `json:"reports,omitempty"`
Outputs []string `json:"outputs,omitempty"`
Mount []*Mount `json:"mount,omitempty"`
}
type StepTemplate ¶
type StepTest ¶
type StepTest struct {
Envs map[string]string `json:"envs,omitempty"`
Uses string `json:"uses,omitempty"`
With map[string]interface{} `json:"with,omitempty"`
Splitting *Splitting `json:"splitting,omitempty"`
Reports []*Report `json:"reports,omitempty"`
Mount []*Mount `json:"mount,omitempty"`
Image string `json:"image,omitempty"`
Connector string `json:"connector,omitempty"`
User string `json:"user,omitempty"`
Pull string `json:"pull,omitempty"`
Resources *Resources `json:"resources,omitempty"`
}
type Strategy ¶
type Strategy struct {
Type string `json:"type,omitempty"`
Spec interface{} `json:"spec,omitempty"`
}
Strategy defines an optional execution strategy.
func (*Strategy) UnmarshalJSON ¶
UnmarshalJSON implement the json.Unmarshaler interface.
type StringorInt ¶
type StringorInt int64
StringorInt represents a string or an integer.
func (*StringorInt) UnmarshalJSON ¶
func (s *StringorInt) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the unmarshal interface.
type Stringorslice ¶
type Stringorslice []string
Stringorslice represents Using engine-api Strslice and augment it with YAML marshalling stuff. a string or an array of strings.
func (*Stringorslice) UnmarshalJSON ¶
func (s *Stringorslice) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the unmarshal interface.
type TemplateStage ¶
type TemplateStage struct {
Name string `json:"name,omitempty"`
Description string `json:"description,omitempty"`
Stage *Stage `json:"stage,omitempty"`
Inputs map[string]*Input `json:"inputs,omitempty"`
}
TemplateStage defines a stage-level template
type TemplateStep ¶
type TemplateStep struct {
Name string `json:"name,omitempty"`
Description string `json:"description,omitempty"`
Step *Step `json:"step,omitempty"`
Inputs map[string]*Input `json:"inputs,omitempty"`
}
TemplateStep defines a step-level template
type TimeoutAction ¶
type TimeoutAction struct {
Type string `json:"type,omitempty"`
Spec interface{} `json:"spec,omitempty"`
}
Manual intervention for timeout failure action
func (*TimeoutAction) UnmarshalJSON ¶
func (v *TimeoutAction) UnmarshalJSON(data []byte) error
UnmarshalJSON implement the json.Unmarshaler interface.
type Volume ¶
type Volume struct {
Name string `json:"name,omitempty"`
Type string `json:"type,omitempty"`
Spec interface{} `json:"spec,omitempty"`
}
func (*Volume) UnmarshalJSON ¶
UnmarshalJSON implement the json.Unmarshaler interface.
type VolumeClaim ¶
type VolumeConfigMap ¶
type VolumeHost ¶
type VolumeHost struct {
Path string `json:"path,omitempty"`
}
type VolumeTemp ¶
type VolumeTemp struct {
Medium string `json:"medium,omitempty"`
Limit StringorInt `json:"limit,omitempty"`
}
type When ¶
When defines execution conditions.
func (*When) MarshalJSON ¶
MarshalJSON implements the marshal interface.
func (*When) UnmarshalJSON ¶
UnmarshalJSON implements the unmarshal interface.
Source Files
¶
- barrier.go
- cache.go
- clone.go
- clone_stage.go
- config.go
- container.go
- credentials.go
- credentials_aws.go
- default.go
- empty_spec.go
- enum_arch.go
- enum_os.go
- failure.go
- failure_abort.go
- failure_action.go
- failure_ignore.go
- failure_list.go
- failure_manual.go
- failure_retry.go
- input.go
- input_items.go
- mount.go
- parse.go
- pipeline.go
- platform.go
- plugin_stage.go
- plugin_step.go
- reference.go
- registry.go
- report.go
- repository.go
- resource.go
- resources.go
- retry_failure.go
- retry_failure_action.go
- runtime.go
- runtime_cloud.go
- runtime_kubernetes.go
- runtime_machine.go
- runtime_vm.go
- splitting.go
- stage.go
- stage_cd.go
- stage_ci.go
- stage_custom.go
- stage_flag.go
- stage_group.go
- stage_infra.go
- stage_parallel.go
- stage_template.go
- status.go
- status_stage.go
- step.go
- step_action.go
- step_background.go
- step_barrier.go
- step_bitrise.go
- step_exec.go
- step_group.go
- step_jenkins.go
- step_parallel.go
- step_plugin.go
- step_run.go
- step_template.go
- step_ti.go
- strategy.go
- strategy_for.go
- strategy_matrix.go
- strategy_while.go
- template_stage.go
- template_step.go
- timeout_action.go
- types.go
- variable.go
- volume.go
- volume_claim.go
- volume_config.go
- volume_host.go
- volume_temp.go
- when.go