 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Index ¶
- Constants
- func CompareResourcePath(first, second *ResourcePath) bool
- type App
- type BlueGreenStrategy
- type Build
- type BuildMaterial
- type CanaryStrategy
- type Component
- type ConfigMaps
- type DataHolder
- type Deployment
- type DeploymentStrategy
- type DeploymentTemplate
- func (o *DeploymentTemplate) CompareDestination(with *ResourcePath) error
- func (o *DeploymentTemplate) CompareSource(with *ResourcePath) error
- func (o *DeploymentTemplate) GetOperation() Operation
- func (o *DeploymentTemplate) GetProps() InheritedProps
- func (o *DeploymentTemplate) UpdateMissingProps(props InheritedProps) error
 
- type DockerConfig
- type InheritedProps
- type Operation
- type Pipeline
- type PipelineRequest
- type PostBuild
- type PostDeployment
- type PreBuild
- type PreDeployment
- type RecreateStrategy
- type Repo
- type ResourcePath
- type RollingStrategy
- type Secrets
- type Stage
- type Task
- type Trigger
- type Workflow
Constants ¶
const ( Clone Operation = "clone" Create Operation = "create" Delete Operation = "delete" Edit Operation = "edit" Append Operation = "append" Undefined Operation = "undefined" Automatic Trigger = "automatic" Manual Trigger = "manual" Secret string = "secret" ConfigMap string = "configmap" BranchFixed string = "BranchFixed" BranchRegex string = "BranchRegex" TagAny string = "TagAny" Webhook string = "Webhook" OperationUndefinedError string = "undefined operator for %s" OperationUnimplementedError string = "unimplemented operator %s for %s" UnsupportedVersion string = "unsupported version %s for %s" SourceNotSame string = "source not same for %s and %s" DestinationNotSame string = "destination not same for %s and %s" SourceNotUnique string = "source not unique for %s" DestinationNotUnique string = "destination not unique for %s" SourceDestinationSame string = "source and destination cannot be same for %s clone" NameEmpty string = "name of %s cannot be empty" EnvironmentEmpty string = "environment cannot be empty for %s %s" DataEmpty string = "data cannot be empty for %s %s" StagesMissing string = "task size cannot be zero" ScriptMissing string = "script is mandatory" )
Variables ¶
This section is empty.
Functions ¶
func CompareResourcePath ¶
func CompareResourcePath(first, second *ResourcePath) bool
Types ¶
type App ¶
type App struct {
	// API version of this configuration
	ApiVersion string       `json:"apiVersion"`
	ConfigMaps []DataHolder `json:"configMaps"`
	// Unique identification of resource
	Destination    *ResourcePath `json:"destination,omitempty"`
	DockerConfig   DockerConfig  `json:"dockerConfig"`
	DockerRegistry string        `json:"dockerRegistry"`
	DockerRepo     string        `json:"dockerRepo"`
	// Action to be taken on the component
	Operation Operation    `json:"operation"`
	Repo      []Repo       `json:"repo"`
	Secrets   []DataHolder `json:"secrets"`
	// Unique identification of resource
	Source *ResourcePath `json:"source,omitempty"`
	Team   string        `json:"team"`
	// Workflow for app
	Workflow *[]Workflow `json:"workflow,omitempty"`
}
    App defines model for app .
type BlueGreenStrategy ¶
type BlueGreenStrategy struct {
	AutoPromotionEnabled  bool  `json:"autoPromotionEnabled"`
	AutoPromotionSeconds  int32 `json:"autoPromotionSeconds"`
	PreviewReplicaCount   int32 `json:"previewReplicaCount"`
	ScaleDownDelaySeconds int32 `json:"scaleDownDelaySeconds"`
}
    BlueGreenStrategy defines model for blueGreenStrategy.
type Build ¶
type Build struct {
	AccessKey *string `json:"accessKey,omitempty"`
	// API version of this configuration
	ApiVersion     string          `json:"apiVersion"`
	BuildMaterials []BuildMaterial `json:"buildMaterials"`
	// Unique identification of resource
	Destination     *ResourcePath          `json:"destination,omitempty"`
	DockerArguments map[string]interface{} `json:"dockerArguments"`
	NextPipeline    *Pipeline              `json:"nextPipeline,omitempty"`
	// Action to be taken on the component
	Operation Operation `json:"operation"`
	Payload   *string   `json:"payload,omitempty"`
	PostBuild *Task     `json:"postBuild,omitempty"`
	PreBuild  *Task     `json:"preBuild,omitempty"`
	Repo      []Repo    `json:"repo"`
	// Unique identification of resource
	Source *ResourcePath `json:"source,omitempty"`
	// How will this action be initiated
	Trigger    Trigger `json:"trigger"`
	WebHookUrl *string `json:"webHookUrl,omitempty"`
}
    Build defines model for build.
func (*Build) GetOperation ¶
func (*Build) GetProps ¶
func (o *Build) GetProps() InheritedProps
func (*Build) UpdateMissingProps ¶
func (o *Build) UpdateMissingProps(props InheritedProps) error
type BuildMaterial ¶
type BuildMaterial struct {
	GitMaterialUrl string `json:"gitMaterialUrl"`
	Source         struct {
		Type  string `json:"type"`
		Value string `json:"value"`
	} `json:"source"`
}
    BuildMaterial defines model for buildMaterial.
type CanaryStrategy ¶
type CanaryStrategy struct {
	MaxSurge       string        `json:"maxSurge"`
	Steps          []interface{} `json:"steps"`
}
    CanaryStrategy defines model for canaryStrategy.
type Component ¶
type Component interface {
	GetOperation() Operation
	GetProps() InheritedProps
	UpdateMissingProps(props InheritedProps) error
	CompareSource(path *ResourcePath) error
	CompareDestination(path *ResourcePath) error
}
    type DataHolder ¶
type DataHolder struct {
	// API version of this configuration
	ApiVersion string `json:"apiVersion"`
	// If operation is clone, leaving value empty results in deletion of key in destination.
	Data map[string]interface{} `json:"data"`
	// Unique identification of resource
	Destination  *ResourcePath `json:"destination,omitempty"`
	External     bool          `json:"external"`
	ExternalType string        `json:"externalType"`
	Global       bool          `json:"global"`
	MountPath    string        `json:"mountPath"`
	// Action to be taken on the component
	Operation Operation `json:"operation"`
	// Unique identification of resource
	Source *ResourcePath `json:"source,omitempty"`
	Type   string        `json:"type"`
}
    DataHolder defines model for dataHolder.
func (*DataHolder) GetOperation ¶
func (o *DataHolder) GetOperation() Operation
func (*DataHolder) GetProps ¶
func (o *DataHolder) GetProps() InheritedProps
func (*DataHolder) UpdateMissingProps ¶
func (o *DataHolder) UpdateMissingProps(props InheritedProps) error
type Deployment ¶
type Deployment struct {
	// API version of this configuration
	ApiVersion string `json:"apiVersion"`
	// These are applied for environment
	ConfigMaps []DataHolder `json:"configMaps"`
	// Unique identification of resource
	Destination  *ResourcePath `json:"destination,omitempty"`
	NextPipeline *Pipeline     `json:"nextPipeline,omitempty"`
	// Action to be taken on the component
	Operation         Operation `json:"operation"`
	PostDeployment    *Task     `json:"postDeployment,omitempty"`
	PreDeployment     *Task     `json:"preDeployment,omitempty"`
	PreviousPipeline  *Pipeline `json:"previousPipeline,omitempty"`
	RunPostStageInEnv bool      `json:"runPostStageInEnv"`
	RunPreStageInEnv  bool      `json:"runPreStageInEnv"`
	// These are applied for environment
	Secrets []DataHolder `json:"secrets"`
	// Unique identification of resource
	Source *ResourcePath `json:"source,omitempty"`
	// Strategy as defined by devtron template, this overrides at environment level
	Strategy DeploymentStrategy  `json:"strategy"`
	Template *DeploymentTemplate `json:"template,omitempty"`
	// How will this action be initiated
	Trigger *Trigger `json:"trigger,omitempty"`
}
    Deployment defines model for deployment.
func (*Deployment) CompareDestination ¶
func (o *Deployment) CompareDestination(with *ResourcePath) error
func (*Deployment) CompareSource ¶
func (o *Deployment) CompareSource(with *ResourcePath) error
func (*Deployment) GetOperation ¶
func (o *Deployment) GetOperation() Operation
func (*Deployment) GetProps ¶
func (o *Deployment) GetProps() InheritedProps
func (*Deployment) UpdateMissingProps ¶
func (o *Deployment) UpdateMissingProps(props InheritedProps) error
type DeploymentStrategy ¶
type DeploymentStrategy struct {
	BlueGreen *BlueGreenStrategy `json:"blueGreen,omitempty"`
	Canary    *CanaryStrategy    `json:"canary,omitempty"`
	Default   string             `json:"default"`
	Recreate  *RecreateStrategy  `json:"recreate,omitempty"`
	Rolling   *RollingStrategy   `json:"rolling,omitempty"`
}
    DeploymentStrategy defines model for deploymentStrategy.
type DeploymentTemplate ¶
type DeploymentTemplate struct {
	// API version of this configuration
	ApiVersion         string                 `json:"apiVersion"`
	ChartRefId         int32                  `json:"chartRefId"`
	DefaultAppOverride map[string]interface{} `json:"defaultAppOverride"`
	// Unique identification of resource
	Destination         *ResourcePath `json:"destination,omitempty"`
	IsAppMetricsEnabled bool          `json:"isAppMetricsEnabled"`
	// Action to be taken on the component
	Operation               Operation `json:"operation"`
	RefChartTemplate        string    `json:"refChartTemplate"`
	RefChartTemplateVersion string    `json:"refChartTemplateVersion"`
	// Unique identification of resource
	Source         *ResourcePath          `json:"source,omitempty"`
	ValuesOverride map[string]interface{} `json:"valuesOverride"`
}
    DeploymentTemplate defines model for deploymentTemplate.
func (*DeploymentTemplate) CompareDestination ¶
func (o *DeploymentTemplate) CompareDestination(with *ResourcePath) error
func (*DeploymentTemplate) CompareSource ¶
func (o *DeploymentTemplate) CompareSource(with *ResourcePath) error
func (*DeploymentTemplate) GetOperation ¶
func (o *DeploymentTemplate) GetOperation() Operation
func (*DeploymentTemplate) GetProps ¶
func (o *DeploymentTemplate) GetProps() InheritedProps
func (*DeploymentTemplate) UpdateMissingProps ¶
func (o *DeploymentTemplate) UpdateMissingProps(props InheritedProps) error
type DockerConfig ¶
type DockerConfig struct {
	Args                   map[string]interface{} `json:"args"`
	DockerFilePath         string                 `json:"dockerFilePath"`
	DockerFileRelativePath string                 `json:"dockerFileRelativePath"`
	DockerFileRepository   string                 `json:"dockerFileRepository"`
	GitMaterial            string                 `json:"gitMaterial"`
}
    DockerConfig defines model for dockerConfig.
type InheritedProps ¶
type InheritedProps struct {
	// Unique identification of resource
	Destination *ResourcePath `json:"destination,omitempty"`
	// Action to be taken on the component
	Operation Operation `json:"operation"`
	// Unique identification of resource
	Source *ResourcePath `json:"source,omitempty"`
}
    InheritedProps defines model for inheritedProps.
type Pipeline ¶
type Pipeline struct {
	Build      *Build      `json:"build,omitempty"`
	Deployment *Deployment `json:"deployment,omitempty"`
}
    Pipeline defines model for pipeline.
type PipelineRequest ¶
type PipelineRequest struct {
	// API version of this configuration
	ApiVersion string `json:"apiVersion"`
	// Entries can be of type build or deployment
	Pipelines []Pipeline `json:"pipelines"`
}
    PipelineRequest defines model for pipelineRequest.
type RecreateStrategy ¶
type RecreateStrategy map[string]interface{}
RecreateStrategy defines model for recreateStrategy.
type Repo ¶
type Repo struct {
	// branch to build
	Branch *string `json:"branch,omitempty"`
	// path to checkout
	Path *string `json:"path,omitempty"`
	// git url
	Url *string `json:"url,omitempty"`
}
    Repo defines model for repo.
type ResourcePath ¶
type ResourcePath struct {
	App         *string `json:"app,omitempty"`
	ConfigMap   *string `json:"configMap,omitempty"`
	Environment *string `json:"environment,omitempty"`
	Pipeline    *string `json:"pipeline,omitempty"`
	Secret      *string `json:"secret,omitempty"`
	Uid         *string `json:"uid,omitempty"`
	Workflow    *string `json:"workflow,omitempty"`
}
    ResourcePath defines model for resourcePath.
type RollingStrategy ¶
type RollingStrategy struct {
	MaxSurge       string `json:"maxSurge"`
}
    RollingStrategy defines model for rollingStrategy.
type Stage ¶
type Stage struct {
	Name string `json:"name"`
	// Action to be taken on the component
	Operation      Operation `json:"operation"`
	OutputLocation *string   `json:"outputLocation,omitempty"`
	Position       *int32    `json:"position,omitempty"`
	Script         *string   `json:"script,omitempty"`
}
    Stage defines model for stage.
type Task ¶
type Task struct {
	// API version of this configuration
	ApiVersion string   `json:"apiVersion"`
	ConfigMaps []string `json:"configMaps"`
	// Unique identification of resource
	Destination *ResourcePath `json:"destination,omitempty"`
	// Action to be taken on the component
	Operation Operation `json:"operation"`
	Secrets   []string  `json:"secrets"`
	// Unique identification of resource
	Source *ResourcePath `json:"source,omitempty"`
	// Different stages in this step
	Stages []Stage `json:"stages"`
	// How will this action be initiated
	Trigger *Trigger `json:"trigger,omitempty"`
}
    Task defines model for task.
func (*Task) CompareDestination ¶
func (o *Task) CompareDestination(with *ResourcePath) error
func (*Task) CompareSource ¶
func (o *Task) CompareSource(with *ResourcePath) error
func (*Task) GetOperation ¶
func (*Task) GetProps ¶
func (o *Task) GetProps() InheritedProps
func (*Task) UpdateMissingProps ¶
func (o *Task) UpdateMissingProps(props InheritedProps) error
type Workflow ¶
type Workflow struct {
	// API version of this configuration
	ApiVersion string `json:"apiVersion"`
	// Unique identification of resource
	Destination *ResourcePath `json:"destination,omitempty"`
	// Action to be taken on the component
	Operation Operation `json:"operation"`
	// Entries can be of type build or deployment
	Pipelines *[]Pipeline `json:"pipelines,omitempty"`
	// Unique identification of resource
	Source *ResourcePath `json:"source,omitempty"`
}
    Workflow defines model for workflow.
func (*Workflow) CompareDestination ¶
func (o *Workflow) CompareDestination(with *ResourcePath) error
func (*Workflow) CompareSource ¶
func (o *Workflow) CompareSource(with *ResourcePath) error
func (*Workflow) GetOperation ¶
func (*Workflow) GetProps ¶
func (o *Workflow) GetProps() InheritedProps
func (*Workflow) UpdateMissingProps ¶
func (o *Workflow) UpdateMissingProps(props InheritedProps) error