Fix `helmfile template` with Helm 3 ignoring chart version (#1406)
This fixes a regression introduced in #1399 Fixes #1377
This commit is contained in:
parent
2710cb382f
commit
61b61d3009
|
|
@ -905,8 +905,6 @@ func (st *HelmState) PrepareCharts(helm helmexec.Interface, dir string, concurre
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
fetchFlags := []string{}
|
|
||||||
|
|
||||||
pathElems := []string{
|
pathElems := []string{
|
||||||
dir,
|
dir,
|
||||||
}
|
}
|
||||||
|
|
@ -922,19 +920,15 @@ func (st *HelmState) PrepareCharts(helm helmexec.Interface, dir string, concurre
|
||||||
chartVersion := "latest"
|
chartVersion := "latest"
|
||||||
if release.Version != "" {
|
if release.Version != "" {
|
||||||
chartVersion = release.Version
|
chartVersion = release.Version
|
||||||
fetchFlags = append(fetchFlags, "--version", release.Version)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
pathElems = append(pathElems, release.Name, chartName, chartVersion)
|
pathElems = append(pathElems, release.Name, chartName, chartVersion)
|
||||||
|
|
||||||
chartPath = path.Join(pathElems...)
|
chartPath = path.Join(pathElems...)
|
||||||
|
|
||||||
if st.isDevelopment(release) {
|
|
||||||
fetchFlags = append(fetchFlags, "--devel")
|
|
||||||
}
|
|
||||||
|
|
||||||
// only fetch chart if it is not already fetched
|
// only fetch chart if it is not already fetched
|
||||||
if _, err := os.Stat(chartPath); os.IsNotExist(err) {
|
if _, err := os.Stat(chartPath); os.IsNotExist(err) {
|
||||||
|
fetchFlags := st.chartVersionFlags(release)
|
||||||
fetchFlags = append(fetchFlags, "--untar", "--untardir", chartPath)
|
fetchFlags = append(fetchFlags, "--untar", "--untardir", chartPath)
|
||||||
if err := helm.Fetch(chartName, fetchFlags...); err != nil {
|
if err := helm.Fetch(chartName, fetchFlags...); err != nil {
|
||||||
results <- &downloadResults{err: err}
|
results <- &downloadResults{err: err}
|
||||||
|
|
@ -1774,14 +1768,7 @@ func (st *HelmState) timeoutFlags(helm helmexec.Interface, release *ReleaseSpec)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (st *HelmState) flagsForUpgrade(helm helmexec.Interface, release *ReleaseSpec, workerIndex int) ([]string, []string, error) {
|
func (st *HelmState) flagsForUpgrade(helm helmexec.Interface, release *ReleaseSpec, workerIndex int) ([]string, []string, error) {
|
||||||
flags := []string{}
|
flags := st.chartVersionFlags(release)
|
||||||
if release.Version != "" {
|
|
||||||
flags = append(flags, "--version", release.Version)
|
|
||||||
}
|
|
||||||
|
|
||||||
if st.isDevelopment(release) {
|
|
||||||
flags = append(flags, "--devel")
|
|
||||||
}
|
|
||||||
|
|
||||||
if release.Verify != nil && *release.Verify || release.Verify == nil && st.HelmDefaults.Verify {
|
if release.Verify != nil && *release.Verify || release.Verify == nil && st.HelmDefaults.Verify {
|
||||||
flags = append(flags, "--verify")
|
flags = append(flags, "--verify")
|
||||||
|
|
@ -1840,7 +1827,7 @@ func (st *HelmState) flagsForUpgrade(helm helmexec.Interface, release *ReleaseSp
|
||||||
}
|
}
|
||||||
|
|
||||||
func (st *HelmState) flagsForTemplate(helm helmexec.Interface, release *ReleaseSpec, workerIndex int) ([]string, []string, error) {
|
func (st *HelmState) flagsForTemplate(helm helmexec.Interface, release *ReleaseSpec, workerIndex int) ([]string, []string, error) {
|
||||||
flags := []string{}
|
flags := st.chartVersionFlags(release)
|
||||||
|
|
||||||
var err error
|
var err error
|
||||||
flags, err = st.appendHelmXFlags(flags, release)
|
flags, err = st.appendHelmXFlags(flags, release)
|
||||||
|
|
@ -1858,14 +1845,7 @@ func (st *HelmState) flagsForTemplate(helm helmexec.Interface, release *ReleaseS
|
||||||
}
|
}
|
||||||
|
|
||||||
func (st *HelmState) flagsForDiff(helm helmexec.Interface, release *ReleaseSpec, workerIndex int) ([]string, []string, error) {
|
func (st *HelmState) flagsForDiff(helm helmexec.Interface, release *ReleaseSpec, workerIndex int) ([]string, []string, error) {
|
||||||
flags := []string{}
|
flags := st.chartVersionFlags(release)
|
||||||
if release.Version != "" {
|
|
||||||
flags = append(flags, "--version", release.Version)
|
|
||||||
}
|
|
||||||
|
|
||||||
if st.isDevelopment(release) {
|
|
||||||
flags = append(flags, "--devel")
|
|
||||||
}
|
|
||||||
|
|
||||||
disableOpenAPIValidation := false
|
disableOpenAPIValidation := false
|
||||||
if release.DisableOpenAPIValidation != nil {
|
if release.DisableOpenAPIValidation != nil {
|
||||||
|
|
@ -1904,6 +1884,20 @@ func (st *HelmState) flagsForDiff(helm helmexec.Interface, release *ReleaseSpec,
|
||||||
return append(flags, common...), files, nil
|
return append(flags, common...), files, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (st *HelmState) chartVersionFlags(release *ReleaseSpec) []string {
|
||||||
|
flags := []string{}
|
||||||
|
|
||||||
|
if release.Version != "" {
|
||||||
|
flags = append(flags, "--version", release.Version)
|
||||||
|
}
|
||||||
|
|
||||||
|
if st.isDevelopment(release) {
|
||||||
|
flags = append(flags, "--devel")
|
||||||
|
}
|
||||||
|
|
||||||
|
return flags
|
||||||
|
}
|
||||||
|
|
||||||
func (st *HelmState) appendApiVersionsFlags(flags []string) []string {
|
func (st *HelmState) appendApiVersionsFlags(flags []string) []string {
|
||||||
for _, a := range st.ApiVersions {
|
for _, a := range st.ApiVersions {
|
||||||
flags = append(flags, "--api-versions", a)
|
flags = append(flags, "--api-versions", a)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue