Documentation ¶
Index ¶
- Constants
- func AddHelmRepoIfMissing(helmer Helmer, helmURL, repoName, username, password string) (string, error)
- type ChartSummary
- type HelmCLI
- func (h *HelmCLI) AddRepo(repoName, repoURL, username, password string) error
- func (h *HelmCLI) BuildDependency() error
- func (h *HelmCLI) DecryptSecrets(location string) error
- func (h *HelmCLI) DeleteRelease(ns string, releaseName string, purge bool) error
- func (h *HelmCLI) Env() map[string]string
- func (h *HelmCLI) FetchChart(chart string, version string, untar bool, untardir string, repo string, ...) error
- func (h *HelmCLI) FindChart() (string, error)
- func (h *HelmCLI) HelmBinary() string
- func (h *HelmCLI) Init(clientOnly bool, serviceAccount string, tillerNamespace string, upgrade bool) error
- func (h *HelmCLI) InstallChart(chart string, releaseName string, ns string, version string, timeout int, ...) error
- func (h *HelmCLI) IsRepoMissing(repoURL string) (bool, string, error)
- func (h *HelmCLI) Lint(valuesFiles []string) (string, error)
- func (h *HelmCLI) ListReleases(ns string) (map[string]ReleaseSummary, []string, error)
- func (h *HelmCLI) ListRepos() (map[string]string, error)
- func (h *HelmCLI) PackageChart() error
- func (h *HelmCLI) RemoveRepo(repo string) error
- func (h *HelmCLI) RemoveRequirementsLock() error
- func (h *HelmCLI) SearchCharts(filter string, allVersions bool) ([]ChartSummary, error)
- func (h *HelmCLI) SetCWD(dir string)
- func (h *HelmCLI) SetHelmBinary(binary string)
- func (h *HelmCLI) StatusRelease(ns string, releaseName string) error
- func (h *HelmCLI) StatusReleaseWithOutput(ns string, releaseName string, outputFormat string) (string, error)
- func (h *HelmCLI) Template(chart string, releaseName string, ns string, outDir string, upgrade bool, ...) error
- func (h *HelmCLI) UpdateRepo() error
- func (h *HelmCLI) UpgradeChart(chart string, releaseName string, ns string, version string, install bool, ...) error
- func (h *HelmCLI) Version(tls bool) (string, error)
- func (h *HelmCLI) VersionWithArgs(tls bool, extraArgs ...string) (string, error)
- type Helmer
- type ReleaseSummary
Constants ¶
const ( // ChartFileName file name for a chart ChartFileName = "Chart.yaml" // LabsChartRepository the default charts repo for the labs charts LabsChartRepository = "https://storage.googleapis.com/jenkinsxio-labs/charts" )
Variables ¶
This section is empty.
Functions ¶
func AddHelmRepoIfMissing ¶
func AddHelmRepoIfMissing(helmer Helmer, helmURL, repoName, username, password string) (string, error)
AddHelmRepoIfMissing will add the helm repo if there is no helm repo with that url present. It will generate the repoName from the url (using the host name) if the repoName is empty. The repo name may have a suffix added in order to prevent name collisions, and is returned for this reason. The username and password will be stored in vault for the URL (if vault is enabled).
Types ¶
type ChartSummary ¶
ChartSummary contains a chart summary
type HelmCLI ¶
HelmCLI implements common helm actions based on helm CLI
func NewHelmCLIWithRunner ¶
NewHelmCLIWithRunner creates a new HelmCLI interface for the given runner
func (*HelmCLI) BuildDependency ¶
BuildDependency builds the helm dependencies of the helm chart from the current working directory
func (*HelmCLI) DecryptSecrets ¶
DecryptSecrets decrypt secrets
func (*HelmCLI) DeleteRelease ¶
DeleteRelease removes the given release
func (*HelmCLI) FetchChart ¶
func (h *HelmCLI) FetchChart(chart string, version string, untar bool, untardir string, repo string, username string, password string) error
FetchChart fetches a Helm Chart
func (*HelmCLI) FindChart ¶
FindChart find a chart in the current working directory, if no chart file is found an error is returned
func (*HelmCLI) HelmBinary ¶
HelmBinary return the configured helm CLI
func (*HelmCLI) Init ¶
func (h *HelmCLI) Init(clientOnly bool, serviceAccount string, tillerNamespace string, upgrade bool) error
Init executes the helm init command according with the given flags
func (*HelmCLI) InstallChart ¶
func (h *HelmCLI) InstallChart(chart string, releaseName string, ns string, version string, timeout int, values []string, valueStrings []string, valueFiles []string, repo string, username string, password string) error
InstallChart installs a helm chart according with the given flags
func (*HelmCLI) IsRepoMissing ¶
IsRepoMissing checks if the repository with the given URL is missing from helm. If the repo is found, the name of the repo will be returned
func (*HelmCLI) Lint ¶
Lint lints the helm chart from the current working directory and returns the warnings in the output
func (*HelmCLI) ListReleases ¶
ListReleases lists the releases in ns
func (*HelmCLI) PackageChart ¶
PackageChart packages the chart from the current working directory
func (*HelmCLI) RemoveRepo ¶
RemoveRepo removes the given repo from helm
func (*HelmCLI) RemoveRequirementsLock ¶
RemoveRequirementsLock removes the requirements.lock file from the current working directory
func (*HelmCLI) SearchCharts ¶
func (h *HelmCLI) SearchCharts(filter string, allVersions bool) ([]ChartSummary, error)
SearchCharts searches for all the charts matching the given filter
func (*HelmCLI) SetHelmBinary ¶
SetHelmBinary configure a new helm CLI
func (*HelmCLI) StatusRelease ¶
StatusRelease returns the output of the helm status command for a given release
func (*HelmCLI) StatusReleaseWithOutput ¶
func (h *HelmCLI) StatusReleaseWithOutput(ns string, releaseName string, outputFormat string) (string, error)
StatusReleaseWithOutput returns the output of the helm status command for a given release
func (*HelmCLI) Template ¶
func (h *HelmCLI) Template(chart string, releaseName string, ns string, outDir string, upgrade bool, values []string, valueStrings []string, valueFiles []string) error
Template generates the YAML from the chart template to the given directory
func (*HelmCLI) UpdateRepo ¶
UpdateRepo updates the helm repositories
func (*HelmCLI) UpgradeChart ¶
func (h *HelmCLI) UpgradeChart(chart string, releaseName string, ns string, version string, install bool, timeout int, force bool, wait bool, values []string, valueStrings []string, valueFiles []string, repo string, username string, password string) error
UpgradeChart upgrades a helm chart according with given helm flags
type Helmer ¶
type Helmer interface { SetCWD(dir string) HelmBinary() string AddRepo(repo, URL, username, password string) error RemoveRepo(repo string) error ListRepos() (map[string]string, error) UpdateRepo() error IsRepoMissing(URL string) (bool, string, error) RemoveRequirementsLock() error BuildDependency() error InstallChart(chart string, releaseName string, ns string, version string, timeout int, values []string, valueStrings []string, valueFiles []string, repo string, username string, password string) error UpgradeChart(chart string, releaseName string, ns string, version string, install bool, timeout int, force bool, wait bool, values []string, valueStrings []string, valueFiles []string, repo string, username string, password string) error FetchChart(chart string, version string, untar bool, untardir string, repo string, username string, password string) error DeleteRelease(ns string, releaseName string, purge bool) error ListReleases(ns string) (map[string]ReleaseSummary, []string, error) FindChart() (string, error) PackageChart() error StatusRelease(ns string, releaseName string) error StatusReleaseWithOutput(ns string, releaseName string, format string) (string, error) Lint(valuesFiles []string) (string, error) Version(tls bool) (string, error) SearchCharts(filter string, allVersions bool) ([]ChartSummary, error) Env() map[string]string DecryptSecrets(location string) error Template(chartDir string, releaseName string, ns string, outputDir string, upgrade bool, values []string, valueStrings []string, valueFiles []string) error }
Helmer defines common helm actions used within Jenkins X