Documentation ¶
Index ¶
- Constants
- Variables
- func DeployHelmChart(chartPath string, releaseName string, namespace string, opts HelmChartOptions) error
- func GetServiceValues(projectName, repo, namespace, dockerTag string, localGit GitInfoGetter, ...) (map[string]interface{}, error)
- func HelmCmd(args ...string) (stdout string, stderr string, err error)
- func HelmVersion() (*version.Version, error)
- func Init() error
- func PurgeHelmRelease(releaseName string, opts CommonHelmOptions) error
- func RunDeploy(projectDir, repo, tag, release, namespace string, ...) error
- func RunDismiss(release, namespace, kubeContext string, opts DismissOptions) error
- func RunLint(projectDir string, werfConfig *config.WerfConfig, opts LintOptions) error
- func RunRender(projectDir string, werfConfig *config.WerfConfig, opts RenderOptions) error
- type ChartConfig
- type ChartTemplates
- func (templates *ChartTemplates) ByKind(kind string) []*Template
- func (templates *ChartTemplates) DaemonSets() []*Template
- func (templates *ChartTemplates) Deployments() []*Template
- func (templates *ChartTemplates) Jobs() []*Template
- func (templates *ChartTemplates) Pods() []*Template
- func (templates *ChartTemplates) StatefulSets() []*Template
- type CommonHelmOptions
- type DeployOptions
- type DismissOptions
- type GitInfoGetter
- type HelmChartOptions
- type ImageInfo
- type ImageInfoGetter
- type ImageInfoGetterStub
- type LintOptions
- type RenderOptions
- type ServiceValuesOptions
- type Template
- type TrackAnno
- type WerfChart
- func (chart *WerfChart) Deploy(releaseName string, namespace string, opts HelmChartOptions) error
- func (chart *WerfChart) Lint() error
- func (chart *WerfChart) Render(namespace string) (string, error)
- func (chart *WerfChart) SetGlobalAnnotation(name, value string) error
- func (chart *WerfChart) SetSecretValuesFile(path string, m secret.Manager) error
- func (chart *WerfChart) SetValues(values map[string]interface{}) error
- func (chart *WerfChart) SetValuesFile(path string) error
- func (chart *WerfChart) SetValuesSet(set string) error
- func (chart *WerfChart) SetValuesSetString(setString string) error
Constants ¶
View Source
const ( DefaultHelmTimeout = 24 * time.Hour TrackAnnoName = "werf/track" HelmHookAnnoName = "helm.sh/hook" HelmHookWeightAnnoName = "helm.sh/hook-weight" TrackDisabled TrackAnno = "false" TrackTillDone TrackAnno = "till_done" TrackTillReady TrackAnno = "till_ready" )
View Source
const ( ProjectHelmChartDir = ".helm" ProjectDefaultSecretValuesFile = ProjectHelmChartDir + "/secret-values.yaml" ProjectSecretDir = ProjectHelmChartDir + "/secret" WerfChartDecodedSecretDir = "decoded-secret" WerfChartMoreValuesDir = "more-values" )
View Source
const (
TemplateEmptyValue = "\"-\""
)
Variables ¶
View Source
var WerfChartHelpersTpl = []byte(`{{- define "werf_secret_file" -}} {{- $relative_file_path := index . 0 -}} {{- $context := index . 1 -}} {{- $context.Files.Get (print "` + WerfChartDecodedSecretDir + `/" $relative_file_path) -}} {{- end -}} {{- define "_image" -}} {{- $context := index . 0 -}} {{- if not $context.Values.global.werf.is_nameless_image -}} {{- required "No image specified for template" nil -}} {{- end -}} {{ $context.Values.global.werf.image.docker_image }} {{- end -}} {{- define "_image2" -}} {{- $name := index . 0 -}} {{- $context := index . 1 -}} {{- if $context.Values.global.werf.is_nameless_image -}} {{- required (printf "No image should be specified for template, got '%s'" $name) nil -}} {{- end -}} {{ index (required (printf "Unknown image '%s' specified for template" $name) (pluck $name $context.Values.global.werf.image | first)) "docker_image" }} {{- end -}} {{- define "image" -}} {{- if eq (typeOf .) "chartutil.Values" -}} {{- $context := . -}} {{ tuple $context | include "_image" }} {{- else if (ge (len .) 2) -}} {{- $name := index . 0 -}} {{- $context := index . 1 -}} {{ tuple $name $context | include "_image2" }} {{- else -}} {{- $context := index . 0 -}} {{ tuple $context | include "_image" }} {{- end -}} {{- end -}} {{- define "_werf_container__imagePullPolicy" -}} {{- $context := index . 0 -}} {{- if $context.Values.global.werf.ci.is_branch -}} imagePullPolicy: Always {{- end -}} {{- end -}} {{- define "_werf_container__image" -}} {{- $context := index . 0 -}} image: {{ tuple $context | include "_image" }} {{- end -}} {{- define "_werf_container__image2" -}} {{- $name := index . 0 -}} {{- $context := index . 1 -}} image: {{ tuple $name $context | include "_image2" }} {{- end -}} {{- define "werf_container_image" -}} {{- if eq (typeOf .) "chartutil.Values" -}} {{- $context := . -}} {{ tuple $context | include "_werf_container__image" }} {{ tuple $context | include "_werf_container__imagePullPolicy" }} {{- else if (ge (len .) 2) -}} {{- $name := index . 0 -}} {{- $context := index . 1 -}} {{ tuple $name $context | include "_werf_container__image2" }} {{ tuple $context | include "_werf_container__imagePullPolicy" }} {{- else -}} {{- $context := index . 0 -}} {{ tuple $context | include "_werf_container__image" }} {{ tuple $context | include "_werf_container__imagePullPolicy" }} {{- end -}} {{- end -}} {{- define "_image_id" -}} {{- $context := index . 0 -}} {{- if not $context.Values.global.werf.is_nameless_image -}} {{- required "No image specified for template" nil -}} {{- end -}} {{ $context.Values.global.werf.image.docker_image_id }} {{- end -}} {{- define "_image_id2" -}} {{- $name := index . 0 -}} {{- $context := index . 1 -}} {{- if $context.Values.global.werf.is_nameless_image -}} {{- required (printf "No image should be specified for template, got '%s'" $name) nil -}} {{- end -}} {{ index (required (printf "Unknown image '%s' specified for template" $name) (pluck $name $context.Values.global.werf.image | first)) "docker_image_id" }} {{- end -}} {{- define "image_id" -}} {{- if eq (typeOf .) "chartutil.Values" -}} {{- $context := . -}} {{ tuple $context | include "_image_id" }} {{- else if (ge (len .) 2) -}} {{- $name := index . 0 -}} {{- $context := index . 1 -}} {{ tuple $name $context | include "_image_id2" }} {{- else -}} {{- $context := index . 0 -}} {{ tuple $context | include "_image_id" }} {{- end -}} {{- end -}} {{- define "_werf_container_env" -}} {{- $context := index . 0 -}} {{- if $context.Values.global.werf.ci.is_branch -}} - name: DOCKER_IMAGE_ID value: {{ tuple $context | include "_image_id" }} {{- else -}} - name: DOCKER_IMAGE_ID value: "-" {{- end -}} {{- end -}} {{- define "_werf_container_env2" -}} {{- $name := index . 0 -}} {{- $context := index . 1 -}} {{- if $context.Values.global.werf.ci.is_branch -}} - name: DOCKER_IMAGE_ID value: {{ tuple $name $context | include "_image_id2" }} {{- else -}} - name: DOCKER_IMAGE_ID value: "-" {{- end -}} {{- end -}} {{- define "werf_container_env" -}} {{- if eq (typeOf .) "chartutil.Values" -}} {{- $context := . -}} {{ tuple $context | include "_werf_container_env" }} {{- else if (ge (len .) 2) -}} {{- $name := index . 0 -}} {{- $context := index . 1 -}} {{ tuple $name $context | include "_werf_container_env2" }} {{- else -}} {{- $context := index . 0 -}} {{ tuple $context | include "_werf_container_env" }} {{- end -}} {{- end -}} `)
Functions ¶
func DeployHelmChart ¶
func DeployHelmChart(chartPath string, releaseName string, namespace string, opts HelmChartOptions) error
func GetServiceValues ¶
func GetServiceValues(projectName, repo, namespace, dockerTag string, localGit GitInfoGetter, images []ImageInfoGetter, opts ServiceValuesOptions) (map[string]interface{}, error)
func HelmVersion ¶
func PurgeHelmRelease ¶
func PurgeHelmRelease(releaseName string, opts CommonHelmOptions) error
func RunDeploy ¶
func RunDeploy(projectDir, repo, tag, release, namespace string, werfConfig *config.WerfConfig, opts DeployOptions) error
func RunDismiss ¶
func RunDismiss(release, namespace, kubeContext string, opts DismissOptions) error
func RunLint ¶
func RunLint(projectDir string, werfConfig *config.WerfConfig, opts LintOptions) error
func RunRender ¶
func RunRender(projectDir string, werfConfig *config.WerfConfig, opts RenderOptions) error
Types ¶
type ChartConfig ¶
type ChartConfig struct {
Name string `json:"name"`
}
type ChartTemplates ¶
type ChartTemplates []*Template
func (*ChartTemplates) ByKind ¶
func (templates *ChartTemplates) ByKind(kind string) []*Template
func (*ChartTemplates) DaemonSets ¶
func (templates *ChartTemplates) DaemonSets() []*Template
func (*ChartTemplates) Deployments ¶
func (templates *ChartTemplates) Deployments() []*Template
func (*ChartTemplates) Jobs ¶
func (templates *ChartTemplates) Jobs() []*Template
func (*ChartTemplates) Pods ¶
func (templates *ChartTemplates) Pods() []*Template
func (*ChartTemplates) StatefulSets ¶
func (templates *ChartTemplates) StatefulSets() []*Template
type CommonHelmOptions ¶
type CommonHelmOptions struct {
KubeContext string
}
type DeployOptions ¶
type DismissOptions ¶
type GitInfoGetter ¶
type HelmChartOptions ¶
type ImageInfo ¶
func (*ImageInfo) GetImageId ¶
func (*ImageInfo) GetImageName ¶
func (*ImageInfo) IsNameless ¶
type ImageInfoGetter ¶
type ImageInfoGetterStub ¶
func (*ImageInfoGetterStub) GetImageId ¶
func (d *ImageInfoGetterStub) GetImageId() (string, error)
func (*ImageInfoGetterStub) GetImageName ¶
func (d *ImageInfoGetterStub) GetImageName() string
func (*ImageInfoGetterStub) GetName ¶
func (d *ImageInfoGetterStub) GetName() string
func (*ImageInfoGetterStub) IsNameless ¶
func (d *ImageInfoGetterStub) IsNameless() bool
type LintOptions ¶
type RenderOptions ¶
type ServiceValuesOptions ¶
type Template ¶
type Template struct { Version string `yaml:"apiVersion"` Kind string `yaml:"kind,omitempty"` Metadata *struct { Name string `yaml:"name"` Namespace string `yaml:"namespace"` Annotations map[string]string `yaml:"annotations"` Uid string `yaml:"uid"` } `yaml:"metadata,omitempty"` Status string `yaml:"status,omitempty"` }
type WerfChart ¶
type WerfChart struct { ChartDir string Values []string Set []string SetString []string // contains filtered or unexported fields }
func GenerateWerfChart ¶
func PrepareWerfChart ¶
func (*WerfChart) Deploy ¶
func (chart *WerfChart) Deploy(releaseName string, namespace string, opts HelmChartOptions) error
func (*WerfChart) SetGlobalAnnotation ¶
func (*WerfChart) SetSecretValuesFile ¶
func (*WerfChart) SetValuesFile ¶
func (*WerfChart) SetValuesSet ¶
func (*WerfChart) SetValuesSetString ¶
Source Files ¶
Click to show internal directories.
Click to hide internal directories.