Merge pull request #87 from danielcb/feature-envvar-support-for-names
Add envvar interpolation for names and namespaces
This commit is contained in:
commit
d380b8d550
|
|
@ -165,6 +165,11 @@ func (state *HelmState) SyncReleases(helm helmexec.Interface, additionalValues [
|
||||||
for w := 1; w <= workerLimit; w++ {
|
for w := 1; w <= workerLimit; w++ {
|
||||||
go func() {
|
go func() {
|
||||||
for release := range jobQueue {
|
for release := range jobQueue {
|
||||||
|
nameRendered, err := renderTemplateString(release.Name)
|
||||||
|
if err != nil {
|
||||||
|
errQueue <- err
|
||||||
|
doneQueue <- true
|
||||||
|
}
|
||||||
state.applyDefaultsTo(release)
|
state.applyDefaultsTo(release)
|
||||||
flags, flagsErr := flagsForRelease(helm, state.BaseChartPath, release)
|
flags, flagsErr := flagsForRelease(helm, state.BaseChartPath, release)
|
||||||
if flagsErr != nil {
|
if flagsErr != nil {
|
||||||
|
|
@ -194,7 +199,7 @@ func (state *HelmState) SyncReleases(helm helmexec.Interface, additionalValues [
|
||||||
}
|
}
|
||||||
|
|
||||||
chart := normalizeChart(state.BaseChartPath, release.Chart)
|
chart := normalizeChart(state.BaseChartPath, release.Chart)
|
||||||
if err := helm.SyncRelease(release.Name, chart, flags...); err != nil {
|
if err := helm.SyncRelease(nameRendered, chart, flags...); err != nil {
|
||||||
errQueue <- err
|
errQueue <- err
|
||||||
}
|
}
|
||||||
doneQueue <- true
|
doneQueue <- true
|
||||||
|
|
@ -231,6 +236,10 @@ func (state *HelmState) DiffReleases(helm helmexec.Interface, additionalValues [
|
||||||
|
|
||||||
for i := 0; i < len(state.Releases); i++ {
|
for i := 0; i < len(state.Releases); i++ {
|
||||||
release := &state.Releases[i]
|
release := &state.Releases[i]
|
||||||
|
renderedName, err := renderTemplateString(release.Name)
|
||||||
|
if err != nil {
|
||||||
|
errs = append(errs, err)
|
||||||
|
}
|
||||||
wg.Add(1)
|
wg.Add(1)
|
||||||
go func(wg *sync.WaitGroup, release *ReleaseSpec) {
|
go func(wg *sync.WaitGroup, release *ReleaseSpec) {
|
||||||
// Plugin command doesn't support explicit namespace
|
// Plugin command doesn't support explicit namespace
|
||||||
|
|
@ -252,7 +261,7 @@ func (state *HelmState) DiffReleases(helm helmexec.Interface, additionalValues [
|
||||||
flags = append(flags, "--values", valfile)
|
flags = append(flags, "--values", valfile)
|
||||||
}
|
}
|
||||||
if len(errs) == 0 {
|
if len(errs) == 0 {
|
||||||
if err := helm.DiffRelease(release.Name, normalizeChart(state.BaseChartPath, release.Chart), flags...); err != nil {
|
if err := helm.DiffRelease(renderedName, normalizeChart(state.BaseChartPath, release.Chart), flags...); err != nil {
|
||||||
errs = append(errs, err)
|
errs = append(errs, err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -386,7 +395,11 @@ func flagsForRelease(helm helmexec.Interface, basePath string, release *ReleaseS
|
||||||
flags = append(flags, "--verify")
|
flags = append(flags, "--verify")
|
||||||
}
|
}
|
||||||
if release.Namespace != "" {
|
if release.Namespace != "" {
|
||||||
flags = append(flags, "--namespace", release.Namespace)
|
namespaceRendered, err := renderTemplateString(release.Namespace)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
flags = append(flags, "--namespace", namespaceRendered)
|
||||||
}
|
}
|
||||||
for _, value := range release.Values {
|
for _, value := range release.Values {
|
||||||
valfile := filepath.Join(basePath, value)
|
valfile := filepath.Join(basePath, value)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue