config

package
v0.50.1-rc0 Latest Latest
Warning

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

Go to latest
Published: Dec 13, 2024 License: Apache-2.0 Imports: 0 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type InputHelmChart

type InputHelmChart struct {
	// Git remote address where the chart is placing.
	// Empty means the same repository.
	GitRemote string `json:"gitRemote,omitempty"`
	// The commit SHA or tag for remote git.
	Ref string `json:"ref,omitempty"`
	// Relative path from the repository root directory to the chart directory.
	Path string `json:"path,omitempty"`

	// The name of an added Helm Chart Repository.
	Repository string `json:"repository,omitempty"`
	Name       string `json:"name,omitempty"`
	Version    string `json:"version,omitempty"`
	// Whether to skip TLS certificate checks for the repository or not.
	// This option will automatically set the value of HelmChartRepository.Insecure.
	Insecure bool `json:"-"`
}

type InputHelmOptions

type InputHelmOptions struct {
	// The release name of helm deployment.
	// By default the release name is equal to the application name.
	ReleaseName string `json:"releaseName,omitempty"`
	// List of values.
	SetValues map[string]string `json:"setValues,omitempty"`
	// List of value files should be loaded.
	ValueFiles []string `json:"valueFiles,omitempty"`
	// List of file path for values.
	SetFiles map[string]string `json:"setFiles,omitempty"`
	// Set of supported Kubernetes API versions.
	APIVersions []string `json:"apiVersions,omitempty"`
	// Kubernetes version used for Capabilities.KubeVersion
	KubeVersion string `json:"kubeVersion,omitempty"`
}

type K8sResourceReference

type K8sResourceReference struct {
	Kind string `json:"kind"`
	Name string `json:"name"`
}

K8sResourceReference represents a reference to a Kubernetes resource. It is used to specify the resources which are treated as the workload of an application.

type KubernetesApplicationSpec

type KubernetesApplicationSpec struct {
	// Input for Kubernetes deployment such as kubectl version, helm version, manifests filter...
	Input KubernetesDeploymentInput `json:"input"`

	// Which resources should be considered as the Workload of application.
	// Empty means all Deployments.
	// e.g.
	// - kind: Deployment
	//   name: deployment-name
	// - kind: ReplicationController
	//   name: replication-controller-name
	Workloads []K8sResourceReference `json:"workloads"`

	// The label will be configured to variant manifests used to distinguish them.
	VariantLabel KubernetesVariantLabel `json:"variantLabel"`
}

KubernetesApplicationSpec represents an application configuration for Kubernetes application.

func (*KubernetesApplicationSpec) Validate

func (s *KubernetesApplicationSpec) Validate() error

type KubernetesDeploymentInput

type KubernetesDeploymentInput struct {
	// List of manifest files in the application directory used to deploy.
	// Empty means all manifest files in the directory will be used.
	Manifests []string `json:"manifests,omitempty"`

	// The namespace where manifests will be applied.
	Namespace string `json:"namespace,omitempty"`
}

KubernetesDeploymentInput represents needed input for triggering a Kubernetes deployment.

type KubernetesVariantLabel

type KubernetesVariantLabel struct {
	// The key of the label.
	// Default is pipecd.dev/variant.
	Key string `json:"key" default:"pipecd.dev/variant"`
	// The label value for PRIMARY variant.
	// Default is primary.
	PrimaryValue string `json:"primaryValue" default:"primary"`
	// The label value for CANARY variant.
	// Default is canary.
	CanaryValue string `json:"canaryValue" default:"canary"`
	// The label value for BASELINE variant.
	// Default is baseline.
	BaselineValue string `json:"baselineValue" default:"baseline"`
}

Jump to

Keyboard shortcuts

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