Documentation ¶
Index ¶
- Constants
- func AddHelmRepoIfMissing(helmer Helmer, helmURL, repoName, username, password string) (string, error)
- type ChartSummary
- type FakeHelmer
- func (f *FakeHelmer) AddRepo(repo, repoURL, username, password string) error
- func (f *FakeHelmer) BuildDependency() error
- func (f *FakeHelmer) DecryptSecrets(location string) error
- func (f *FakeHelmer) DeleteRelease(ns, releaseName string, purge bool) error
- func (f *FakeHelmer) Env() map[string]string
- func (f *FakeHelmer) FetchChart(chart, version string, untar bool, untardir, repo, username, password string) error
- func (f *FakeHelmer) FindChart() (string, error)
- func (f *FakeHelmer) HelmBinary() string
- func (f *FakeHelmer) InstallChart(chart, releaseName, ns, version string, timeout int, ...) error
- func (f *FakeHelmer) IsRepoMissing(repoURL string) (bool, string, error)
- func (f *FakeHelmer) Lint(valuesFiles []string) (string, error)
- func (f *FakeHelmer) ListReleases(ns string) (map[string]ReleaseSummary, []string, error)
- func (f *FakeHelmer) ListRepos() (map[string]string, error)
- func (f *FakeHelmer) PackageChart() error
- func (f *FakeHelmer) RemoveRepo(repo string) error
- func (f *FakeHelmer) RemoveRequirementsLock() error
- func (f *FakeHelmer) SearchCharts(filter string, allVersions bool) ([]ChartSummary, error)
- func (f *FakeHelmer) SetCWD(dir string)
- func (f *FakeHelmer) StatusRelease(ns, releaseName string) error
- func (f *FakeHelmer) StatusReleaseWithOutput(ns, releaseName, format string) (string, error)
- func (f *FakeHelmer) Template(chartDir, releaseName, ns, outputDir string, upgrade bool, ...) error
- func (f *FakeHelmer) UpdateRepo() error
- func (f *FakeHelmer) UpgradeChart(chart, releaseName, ns, version string, install bool, timeout int, ...) error
- func (f *FakeHelmer) Version(tls bool) (string, error)
- 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, releaseName string, purge bool) error
- func (h *HelmCLI) Env() map[string]string
- func (h *HelmCLI) FetchChart(chart, version string, untar bool, untardir, repo, username, password string) error
- func (h *HelmCLI) FindChart() (string, error)
- func (h *HelmCLI) HelmBinary() string
- func (h *HelmCLI) Init(clientOnly bool, serviceAccount, tillerNamespace string, upgrade bool) error
- func (h *HelmCLI) InstallChart(chart, releaseName, ns, 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, releaseName string) error
- func (h *HelmCLI) StatusReleaseWithOutput(ns, releaseName, outputFormat string) (string, error)
- func (h *HelmCLI) Template(chart, releaseName, ns, outDir string, upgrade bool, ...) error
- func (h *HelmCLI) UpdateRepo() error
- func (h *HelmCLI) UpgradeChart(chart, releaseName, ns, version string, install bool, timeout int, ...) 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" // JX3ChartRepository the default charts repo for the jx3 charts JX3ChartRepository = "https://storage.googleapis.com/jenkinsxio/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 FakeHelmer ¶
FakeHelmer a fake helmer
func (*FakeHelmer) AddRepo ¶
func (f *FakeHelmer) AddRepo(repo, repoURL, username, password string) error
func (*FakeHelmer) BuildDependency ¶
func (f *FakeHelmer) BuildDependency() error
func (*FakeHelmer) DecryptSecrets ¶
func (f *FakeHelmer) DecryptSecrets(location string) error
func (*FakeHelmer) DeleteRelease ¶
func (f *FakeHelmer) DeleteRelease(ns, releaseName string, purge bool) error
func (*FakeHelmer) Env ¶
func (f *FakeHelmer) Env() map[string]string
func (*FakeHelmer) FetchChart ¶
func (f *FakeHelmer) FetchChart(chart, version string, untar bool, untardir, repo, username, password string) error
func (*FakeHelmer) FindChart ¶
func (f *FakeHelmer) FindChart() (string, error)
func (*FakeHelmer) HelmBinary ¶
func (f *FakeHelmer) HelmBinary() string
func (*FakeHelmer) InstallChart ¶
func (*FakeHelmer) IsRepoMissing ¶
func (f *FakeHelmer) IsRepoMissing(repoURL string) (bool, string, error)
func (*FakeHelmer) ListReleases ¶
func (f *FakeHelmer) ListReleases(ns string) (map[string]ReleaseSummary, []string, error)
func (*FakeHelmer) PackageChart ¶
func (f *FakeHelmer) PackageChart() error
func (*FakeHelmer) RemoveRepo ¶
func (f *FakeHelmer) RemoveRepo(repo string) error
func (*FakeHelmer) RemoveRequirementsLock ¶
func (f *FakeHelmer) RemoveRequirementsLock() error
func (*FakeHelmer) SearchCharts ¶
func (f *FakeHelmer) SearchCharts(filter string, allVersions bool) ([]ChartSummary, error)
func (*FakeHelmer) SetCWD ¶
func (f *FakeHelmer) SetCWD(dir string)
func (*FakeHelmer) StatusRelease ¶
func (f *FakeHelmer) StatusRelease(ns, releaseName string) error
func (*FakeHelmer) StatusReleaseWithOutput ¶
func (f *FakeHelmer) StatusReleaseWithOutput(ns, releaseName, format string) (string, error)
func (*FakeHelmer) Template ¶
func (f *FakeHelmer) Template(chartDir, releaseName, ns, outputDir string, upgrade bool, values, valueStrings, valueFiles []string) error
func (*FakeHelmer) UpdateRepo ¶
func (f *FakeHelmer) UpdateRepo() error
func (*FakeHelmer) UpgradeChart ¶
type HelmCLI ¶
type HelmCLI struct { Binary string CWD string Runner cmdrunner.CommandRunner Command *cmdrunner.Command Debug bool }
HelmCLI implements common helm actions based on helm CLI
func NewHelmCLIWithRunner ¶
func NewHelmCLIWithRunner(runner cmdrunner.CommandRunner, binary, cwd string, debug bool) *HelmCLI
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, version string, untar bool, untardir, repo, username, 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) InstallChart ¶
func (h *HelmCLI) InstallChart(chart, releaseName, ns, version string, timeout int, values, valueStrings, valueFiles []string, repo, username, 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 ¶
StatusReleaseWithOutput returns the output of the helm status command for a given release
func (*HelmCLI) Template ¶
func (h *HelmCLI) Template(chart, releaseName, ns, outDir string, upgrade bool, values, valueStrings, 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, releaseName, ns, version string, install bool, timeout int, force, wait bool, values, valueStrings, valueFiles []string, repo, username, 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