models

package
v0.1.16 Latest Latest
Warning

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

Go to latest
Published: Aug 3, 2022 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BaseDeploymentStrategy

type BaseDeploymentStrategy struct {
	PreDeploy        *DeploymentHook `yaml:"preDeploy,omitempty"`
	Deploy           *DeploymentHook `yaml:"deploy,omitempty"`
	RouteTraffic     *DeploymentHook `yaml:"routeTraffic,omitempty"`
	PostRouteTraffic *DeploymentHook `yaml:"postRouteTraffic,omitempty"`
	On               struct {
		Failure *DeploymentHook `yaml:"failure,omitempty"`
		Success *DeploymentHook `yaml:"success,omitempty"`
	} `yaml:"on,omitempty"`
}

type BaseJob

type BaseJob struct {
	DisplayName            string            `yaml:"displayName,omitempty"`
	DependsOn              *DependsOn        `yaml:"dependsOn,omitempty"`
	Condition              string            `yaml:"condition,omitempty"`
	ContinueOnError        bool              `yaml:"continueOnError,omitempty"`
	TimeoutInMinutes       int               `yaml:"timeoutInMinutes,omitempty"`
	CancelTimeoutInMinutes int               `yaml:"cancelTimeoutInMinutes,omitempty"`
	Variables              *Variables        `yaml:"variables,omitempty"`
	Pool                   *Pool             `yaml:"pool,omitempty"`
	Container              *JobContainer     `yaml:"container,omitempty"`
	Services               map[string]string `yaml:"services,omitempty"`
	Workspace              *Workspace        `yaml:"workspace,omitempty"`
	Uses                   *Uses             `yaml:"uses,omitempty"`
	Steps                  *Steps            `yaml:"steps,omitempty"`
	TemplateContext        map[string]any    `yaml:"templateContext,omitempty"`
}

type Build

type Build struct {
	Build      string `yaml:"build,omitempty"`
	Type       string `yaml:"type,omitempty"`
	Connection string `yaml:"connection,omitempty"`
	Source     string `yaml:"source,omitempty"`
	Version    string `yaml:"version,omitempty"`
	Branch     string `yaml:"branch,omitempty"`
	Trigger    string `yaml:"trigger,omitempty"`
}

type BuildRef

type BuildRef struct {
	Build         *Build
	FileReference *models.FileReference
}

func (*BuildRef) UnmarshalYAML

func (br *BuildRef) UnmarshalYAML(node *yaml.Node) error

type CIJob

type CIJob struct {
	Job           string       `yaml:"job,omitempty"`
	Strategy      *JobStrategy `yaml:"strategy,omitempty"`
	BaseJob       `yaml:",inline"`
	FileReference *models.FileReference
}

type CanaryStrategy

type CanaryStrategy struct {
	Increments             []string `yaml:"increments,omitempty"`
	BaseDeploymentStrategy `yaml:",inline"`
}

type Cron

type Cron struct {
	Cron          string `yaml:"cron,omitempty"`
	DisplayName   string `yaml:"displayName,omitempty"`
	Branches      Filter `yaml:"branches,omitempty"`
	Batch         bool   `yaml:"batch,omitempty"`
	Always        bool   `yaml:"always,omitempty"`
	FileReference *models.FileReference
}

type DependsOn

type DependsOn []string

func (*DependsOn) UnmarshalYAML

func (n *DependsOn) UnmarshalYAML(node *yaml.Node) error

type DeploymentEnvironment

type DeploymentEnvironment struct {
	Name         string `yaml:"name,omitempty"`
	ResourceName string `yaml:"resourceName,omitempty"`
	ResourceId   string `yaml:"resourceId,omitempty"`
	ResourceType string `yaml:"resourceType,omitempty"`
	Tags         string `yaml:"tags,omitempty"`
}

type DeploymentEnvironmentRef

type DeploymentEnvironmentRef struct {
	DeploymentEnvironment *DeploymentEnvironment `yaml:"deploymentEnvironment,omitempty"`
	FileReference         *models.FileReference
}

func (*DeploymentEnvironmentRef) UnmarshalYAML

func (der *DeploymentEnvironmentRef) UnmarshalYAML(node *yaml.Node) error

type DeploymentHook

type DeploymentHook struct {
	Steps *Steps `yaml:"steps,omitempty"`
	Pool  *Pool  `yaml:"pool,omitempty"`
}

type DeploymentJob

type DeploymentJob struct {
	Deployment    string                    `yaml:"deployment,omitempty"`
	Strategy      *DeploymentStrategy       `yaml:"strategy,omitempty"`
	Environment   *DeploymentEnvironmentRef `yaml:"environment,omitempty"`
	BaseJob       `yaml:",inline"`
	FileReference *models.FileReference
}

type DeploymentStrategy

type DeploymentStrategy struct {
	RunOnce *BaseDeploymentStrategy `yaml:"runOnce,omitempty"`
	Rolling *RollingStrategy        `yaml:"rolling,omitempty"`
	Canary  *CanaryStrategy         `yaml:"canary,omitempty"`
}

type EnvironmentVariablesRef

type EnvironmentVariablesRef struct {
	models.EnvironmentVariables
	FileReference *models.FileReference
}

func (*EnvironmentVariablesRef) UnmarshalYAML

func (e *EnvironmentVariablesRef) UnmarshalYAML(node *yaml.Node) error

type Extends

type Extends struct {
	Template      `yaml:"inline"`
	FileReference *models.FileReference
}

func (*Extends) UnmarshalYAML

func (e *Extends) UnmarshalYAML(node *yaml.Node) error

type Filter

type Filter struct {
	Include []string `yaml:"include,omitempty"`
	Exclude []string `yaml:"exclude,omitempty"`
}

func (*Filter) UnmarshalYAML

func (f *Filter) UnmarshalYAML(node *yaml.Node) error

type JobContainer

type JobContainer struct {
	Image           string                   `yaml:"image,omitempty"`
	Endpoint        string                   `yaml:"endpoint,omitempty"`
	Env             *EnvironmentVariablesRef `yaml:"env,omitempty"`
	MapDockerSocket bool                     `yaml:"mapDockerSocket,omitempty"`
	Options         string                   `yaml:"options,omitempty"`
	Ports           []string                 `yaml:"ports,omitempty"`
	Volumes         []string                 `yaml:"volumes,omitempty"`
	MountReadOnly   *MountReadOnly           `yaml:"mountReadOnly,omitempty"`
}

func (*JobContainer) UnmarshalYAML added in v0.1.16

func (jc *JobContainer) UnmarshalYAML(node *yaml.Node) error

type JobStrategy

type JobStrategy struct {
	Matrix      *Matrix `yaml:"matrix,omitempty"`
	MaxParallel int     `yaml:"maxParallel,omitempty"`
	Parallel    string  `yaml:"parallel,omitempty"`
}

type JobType

type JobType string
const (
	CIJobType         JobType = "job"
	DeploymentJobType JobType = "deployment"
	TemplateJobType   JobType = "template"
)

type Jobs

type Jobs struct {
	CIJobs         []*CIJob
	DeploymentJobs []*DeploymentJob
	TemplateJobs   []*TemplateJob
	FileReference  *models.FileReference
}

func (*Jobs) UnmarshalYAML

func (j *Jobs) UnmarshalYAML(node *yaml.Node) error

type Matrix

type Matrix map[string]map[string]string

type MountReadOnly

type MountReadOnly struct {
	Work     bool `yaml:"work,omitempty"`
	External bool `yaml:"external,omitempty"`
	Tools    bool `yaml:"tools,omitempty"`
	Tasks    bool `yaml:"tasks,omitempty"`
}

type PR

type PR struct {
	AutoCancel bool   `yaml:"autoCancel,omitempty"`
	Branches   Filter `yaml:"branches,omitempty"`
	Paths      Filter `yaml:"paths,omitempty"`
	Drafts     bool   `yaml:"drafts,omitempty"`
}

type PRRef

type PRRef struct {
	PR            *PR `yaml:"pr,omitempty"`
	FileReference *models.FileReference
}

func (*PRRef) UnmarshalYAML

func (prr *PRRef) UnmarshalYAML(node *yaml.Node) error

type Package

type Package struct {
	Package       string `yaml:"package,omitempty"`
	Type          string `yaml:"type,omitempty"`
	Connection    string `yaml:"connection,omitempty"`
	Name          string `yaml:"name,omitempty"`
	Version       string `yaml:"version,omitempty"`
	Tag           string `yaml:"tag,omitempty"`
	Trigger       string `yaml:"trigger,omitempty"`
	FileReference *models.FileReference
}

type PackageRef

type PackageRef struct {
	Package       *Package
	FileReference *models.FileReference
}

func (*PackageRef) UnmarshalYAML

func (pr *PackageRef) UnmarshalYAML(node *yaml.Node) error

type Parameter

type Parameter struct {
	Name          string   `yaml:"name,omitempty"`
	DisplayName   string   `yaml:"displayName,omitempty"`
	Type          string   `yaml:"type,omitempty"`
	Default       any      `yaml:"default,omitempty"`
	Values        []string `yaml:"values,omitempty"`
	FileReference *models.FileReference
}

type Parameters

type Parameters []Parameter

func (*Parameters) UnmarshalYAML

func (p *Parameters) UnmarshalYAML(node *yaml.Node) error

type Path

type Path struct {
	Path  string `yaml:"path,omitempty"`
	Value string `yaml:"value,omitempty"`
}

type Pipeline

type Pipeline struct {
	Extends         *Extends      `yaml:"extends,omitempty"`
	Jobs            *Jobs         `yaml:"jobs,omitempty"`
	Stages          *Stages       `yaml:"stages,omitempty"`
	ContinueOnError *bool         `yaml:"continueOnError,omitempty"`
	Pool            *Pool         `yaml:"pool,omitempty"`
	Container       *JobContainer `yaml:"container,omitempty"`
	Name            string        `yaml:"name,omitempty"`
	Trigger         *TriggerRef   `yaml:"trigger,omitempty"`
	Parameters      *Parameters   `yaml:"parameters,omitempty"`
	PR              *PRRef        `yaml:"pr,omitempty"`
	Schedules       *Schedules    `yaml:"schedules,omitempty"`
	// Resources       *Resources  `yaml:"resources,omitempty"` // Currently can't load it due to mismatch in the azure pipelines documentation
	Steps        *Steps     `yaml:"steps,omitempty"`
	Variables    *Variables `yaml:"variables,omitempty"`
	LockBehavior string     `yaml:"lockBehavior,omitempty"`
}

type Pool

type Pool struct {
	Name          string   `yaml:"name"`
	Demands       []string `yaml:"demands"`
	VmImage       string   `yaml:"vmImage"`
	FileReference *models.FileReference
}

func (*Pool) UnmarshalYAML

func (p *Pool) UnmarshalYAML(node *yaml.Node) error

type Repository

type Repository struct {
	Repository    string      `yaml:"repository,omitempty"`
	Endpoint      string      `yaml:"endpoint,omitempty"`
	Trigger       *TriggerRef `yaml:"trigger,omitempty"`
	Name          string      `yaml:"name,omitempty"`
	Type          string      `yaml:"type,omitempty"`
	Ref           string      `yaml:"ref,omitempty"`
	FileReference *models.FileReference
}

type RepositoryRef

type RepositoryRef struct {
	Repository    *Repository
	FileReference *models.FileReference
}

func (*RepositoryRef) UnmarshalYAML

func (rr *RepositoryRef) UnmarshalYAML(node *yaml.Node) error

type ResourceContainer

type ResourceContainer struct {
	Container         string      `yaml:"container,omitempty"`
	Type              string      `yaml:"type,omitempty"`
	Trigger           *TriggerRef `yaml:"trigger,omitempty"`
	AzureSubscription string      `yaml:"azureSubscription,omitempty"`
	ResourceGroup     string      `yaml:"resourceGroup,omitempty"`
	Registry          string      `yaml:"registry,omitempty"`
	Repository        string      `yaml:"repository,omitempty"`
	JobContainer      `yaml:",inline"`
}

type ResourceContainerRef

type ResourceContainerRef struct {
	ResourceContainer *ResourceContainer
	FileReference     *models.FileReference
}

func (*ResourceContainerRef) UnmarshalYAML

func (rcf *ResourceContainerRef) UnmarshalYAML(node *yaml.Node) error

type ResourcePipeline

type ResourcePipeline struct {
	Pipeline string      `yaml:"pipeline,omitempty"`
	Project  string      `yaml:"project,omitempty"`
	Source   string      `yaml:"source,omitempty"`
	Version  string      `yaml:"version,omitempty"`
	Branch   string      `yaml:"branch,omitempty"`
	Tags     []string    `yaml:"tags,omitempty"`
	Trigger  *TriggerRef `yaml:"trigger,omitempty"`
}

type ResourcePipelineRef

type ResourcePipelineRef struct {
	ResourcePipeline *ResourcePipeline
	FileReference    *models.FileReference
}

func (*ResourcePipelineRef) UnmarshalYAML

func (rpr *ResourcePipelineRef) UnmarshalYAML(node *yaml.Node) error

type Resources

type Resources struct {
	Builds        []*BuildRef             `yaml:"builds,omitempty"`
	Containers    []*ResourceContainerRef `yaml:"containers,omitempty"`
	Pipelines     []*ResourcePipelineRef  `yaml:"pipelines,omitempty"`
	Repositories  []*RepositoryRef        `yaml:"repositories,omitempty"`
	Webhooks      []*WebhookRef           `yaml:"webhooks,omitempty"`
	Packages      []*PackageRef           `yaml:"packages,omitempty"`
	FileReference *models.FileReference
}

func (*Resources) UnmarshalYAML

func (r *Resources) UnmarshalYAML(node *yaml.Node) error

type RollingStrategy

type RollingStrategy struct {
	MaxParallel            string `yaml:"maxParallel,omitempty"`
	BaseDeploymentStrategy `yaml:",inline"`
}

type Schedules

type Schedules struct {
	Crons         *[]Cron `yaml:"schedules,omitempty"`
	FileReference *models.FileReference
}

func (*Schedules) UnmarshalYAML

func (s *Schedules) UnmarshalYAML(node *yaml.Node) error

type Stage

type Stage struct {
	Stage           string         `yaml:"stage,omitempty"`
	DisplayName     string         `yaml:"displayName,omitempty"`
	Pool            *Pool          `yaml:"pool,omitempty"`
	DependsOn       *DependsOn     `yaml:"dependsOn,omitempty"`
	Condition       string         `yaml:"condition,omitempty"`
	Variables       *Variables     `yaml:"variables,omitempty"`
	Jobs            *Jobs          `yaml:"jobs,omitempty"`
	LockBehavior    string         `yaml:"lockBehavior,omitempty"`
	TemplateContext map[string]any `yaml:"templateContext,omitempty"`
	FileReference   *models.FileReference
}

type Stages

type Stages struct {
	Stages         []*Stage         `yaml:"stages,omitempty"`
	TemplateStages []*TemplateStage `yaml:"templateStages,omitempty"`
	FileReference  *models.FileReference
}

func (*Stages) UnmarshalYAML

func (s *Stages) UnmarshalYAML(node *yaml.Node) error

type Step

type Step struct {
	Name                    string                   `yaml:"name,omitempty"`
	Condition               string                   `yaml:"condition,omitempty"`
	ContinueOnError         *bool                    `yaml:"continueOnError,omitempty"`
	DisplayName             string                   `yaml:"displayName,omitempty"`
	Target                  *StepTarget              `yaml:"target,omitempty"`
	Enabled                 *bool                    `yaml:"enabled,omitempty"`
	Env                     *EnvironmentVariablesRef `yaml:"env,omitempty"`
	TimeoutInMinutes        int                      `yaml:"timeoutInMinutes,omitempty"`
	RetryCountOnTaskFailure int                      `yaml:"retryCountOnTaskFailure,omitempty"`
	Bash                    string                   `yaml:"bash,omitempty"`
	Checkout                string                   `yaml:"checkout,omitempty"`
	Clean                   bool                     `yaml:"clean,omitempty"`
	FetchDepth              int                      `yaml:"fetchDepth,omitempty"`
	Lfs                     bool                     `yaml:"lfs,omitempty"`
	PersistCredentials      bool                     `yaml:"persistCredentials,omitempty"`
	Submodules              string                   `yaml:"submodules,omitempty"`
	Path                    string                   `yaml:"path,omitempty"`
	Download                string                   `yaml:"download,omitempty"`
	DownloadBuild           string                   `yaml:"downloadBuild,omitempty"`
	Artifact                string                   `yaml:"artifact,omitempty"`
	Patterns                string                   `yaml:"patterns,omitempty"`
	GetPackage              string                   `yaml:"getPackage,omitempty"`
	Powershell              string                   `yaml:"powershell,omitempty"`
	ErrorActionPreference   string                   `yaml:"errorActionPreference,omitempty"`
	FailOnStderr            bool                     `yaml:"failOnStderr,omitempty"`
	IgnoreLASTEXITCODE      bool                     `yaml:"ignoreLASTEXITCODE,omitempty"`
	WorkingDirectory        string                   `yaml:"workingDirectory,omitempty"`
	Publish                 string                   `yaml:"publish,omitempty"`
	Pwsh                    string                   `yaml:"pwsh,omitempty"`
	RestoreCache            string                   `yaml:"restoreCache,omitempty"`
	ReviewApp               string                   `yaml:"reviewApp,omitempty"`
	SaveCache               string                   `yaml:"saveCache,omitempty"`
	Script                  string                   `yaml:"script,omitempty"`
	Task                    string                   `yaml:"task,omitempty"`
	Inputs                  *TaskInputs              `yaml:"inputs,omitempty"`
	Template                `yaml:",inline"`

	FileReference *models.FileReference
}

type StepTarget

type StepTarget struct {
	Container         string   `yaml:"container,omitempty"`
	Commands          string   `yaml:"commands,omitempty"`
	SettableVariables []string `yaml:"settableVariables,omitempty"`
	FileReference     *models.FileReference
}

func (*StepTarget) UnmarshalYAML

func (t *StepTarget) UnmarshalYAML(node *yaml.Node) error

type Steps

type Steps []Step

func (*Steps) UnmarshalYAML

func (s *Steps) UnmarshalYAML(node *yaml.Node) error

type TaskInputs

type TaskInputs struct {
	Inputs        map[string]any
	FileReference *models.FileReference
}

func (*TaskInputs) UnmarshalYAML

func (ti *TaskInputs) UnmarshalYAML(node *yaml.Node) error

type Template

type Template struct {
	Template   string         `yaml:"template,omitempty"`
	Parameters map[string]any `yaml:"parameters,omitempty"`
}

type TemplateJob

type TemplateJob struct {
	Template      `yaml:",inline"`
	FileReference *models.FileReference
}

type TemplateStage

type TemplateStage struct {
	Template      `yaml:",inline"`
	FileReference *models.FileReference
}

type Trigger

type Trigger struct {
	Batch    bool   `yaml:"batch,omitempty"`
	Branches Filter `yaml:"branches,omitempty"`
	Paths    Filter `yaml:"paths,omitempty"`
	Tags     Filter `yaml:"tags,omitempty"`
	Stages   Filter `yaml:"stages,omitempty"`
}

type TriggerRef

type TriggerRef struct {
	Trigger       *Trigger `yaml:"trigger,omitempty"`
	FileReference *models.FileReference
}

func (*TriggerRef) UnmarshalYAML

func (tr *TriggerRef) UnmarshalYAML(node *yaml.Node) error

type Uses

type Uses struct {
	Repositories []string `yaml:"repositories,omitempty"`
	Pools        []string `yaml:"pools,omitempty"`
}

type Variable

type Variable struct {
	Name          string `yaml:"name,omitempty"`
	Value         string `yaml:"value,omitempty"`
	Readonly      bool   `yaml:"readonly,omitempty"`
	Group         string `yaml:"group,omitempty"`
	Template      `yaml:",inline"`
	FileReference *models.FileReference
}

type Variables

type Variables []Variable

func (*Variables) UnmarshalYAML

func (v *Variables) UnmarshalYAML(node *yaml.Node) error

type Webhook

type Webhook struct {
	Webhook    string `yaml:"webhook,omitempty"`
	Connection string `yaml:"connection,omitempty"`
	Type       string `yaml:"type,omitempty"`
	Filters    []Path
}

type WebhookRef

type WebhookRef struct {
	Webhook       *Webhook
	FileReference *models.FileReference
}

func (*WebhookRef) UnmarshalYAML

func (wr *WebhookRef) UnmarshalYAML(node *yaml.Node) error

type Workspace

type Workspace struct {
	Clean string `yaml:"clean,omitempty"`
}

Jump to

Keyboard shortcuts

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