Documentation ¶
Index ¶
- type AutoReleaser
- type Chart
- type ChartManifest
- type ChartsDir
- type MockChart
- func (c *MockChart) BumpChartVersion(latestPublishedVersion string) (string, error)
- func (c *MockChart) GenerateDocs() error
- func (c *MockChart) LocalDependencies() []string
- func (c *MockChart) ManifestVersion() string
- func (c *MockChart) Name() string
- func (c *MockChart) PackageChart(destPath string) error
- func (c *MockChart) Path() string
- func (c *MockChart) SetDependencyVersion(dependencyName string, newVersion string) error
- func (c *MockChart) UpdateDependencies() error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AutoReleaser ¶
type AutoReleaser struct { GitopsUpdaters []gitops.Versions SherlockUpdaters []sherlock.ChartVersionUpdater SoftFailSherlockUpdaters []sherlock.ChartVersionUpdater }
AutoReleaser offers a UpdateReleaseVersion to take a newly published chart and update development instances to use it. It stores lists of different update mechanisms so they can be easily enabled/disabled by the caller. This is a literal struct, not an interface, so the callers can configure it out without needing to pass multiple parameters around.
func (*AutoReleaser) UpdateReleaseVersion ¶
type Chart ¶
type Chart interface { // Name returns the name of this chart Name() string // Path returns the path to this chart on disk Path() string // BumpChartVersion updates chart version in chart.yaml BumpChartVersion(latestPublishedVersion string) (string, error) // UpdateDependencies runs `helm dependency update` on the local copy of the chart. UpdateDependencies() error // PackageChart runs `helm package` to package a chart PackageChart(destPath string) error // GenerateDocs re-generates README documentation for the given chart GenerateDocs() error // LocalDependencies returns the names of local dependencies / subcharts (using Helm's "file://" repo support) LocalDependencies() []string // SetDependencyVersion sets the version of a dependency in this chart's Chart.yaml SetDependencyVersion(dependencyName string, newVersion string) error // ManifestVersion returns the version of this chart in Chart.yaml ManifestVersion() string }
Chart represents a Helm chart source directory on the local filesystem.
type ChartManifest ¶
type ChartManifest struct { Name string Version string Dependencies []struct { Name string Repository string Version string } }
ChartManifest struct used to unmarshal Helm chart.yaml files.
type ChartsDir ¶
type ChartsDir interface { // PublishAndRelease calculates out downstream dependents of the given charts, increments versions, publishes new // chart packages to the Helm repo, and releases those new versions into our version systems courtesy of // AutoReleaser. // // If chart `bar` depends on chart `foo`, just including `foo` in the chartNames will also publish and release // `bar`. // // Returns a map representing the names and versions of charts that were published and released. Eg. // { // "foo": "1.2.3", // "bar": "0.2.0", // } PublishAndRelease(chartNames []string, description string) (publishedVersions map[string]string, err error) }
ChartsDir represents a directory of Helm chart sources on the local filesystem.
func NewChartsDir ¶
func NewChartsDir( sourceDir string, publisher publish.Publisher, shellRunner shell.Runner, autoreleaser *AutoReleaser, ) (ChartsDir, error)
NewChartsDir constructs a new ChartsDir
type MockChart ¶
func NewMockChart ¶
func NewMockChart() *MockChart
func (*MockChart) BumpChartVersion ¶
func (*MockChart) GenerateDocs ¶
func (*MockChart) LocalDependencies ¶
func (*MockChart) ManifestVersion ¶
func (*MockChart) PackageChart ¶
func (*MockChart) SetDependencyVersion ¶
func (*MockChart) UpdateDependencies ¶
Click to show internal directories.
Click to hide internal directories.