Do delete decrypted secret on sync command (#82)

Due to not passing around the pointer into channels and through the functions, we were not getting back the generatedValues. This fixes that.
This commit is contained in:
Shane Starcher 2018-04-03 21:22:17 -04:00 committed by KUOKA Yusuke
parent 813fd4bfc7
commit b4f9c1ce79
2 changed files with 8 additions and 9 deletions

View File

@ -123,11 +123,10 @@ func renderTemplateString(s string) (string, error) {
return tplString.String(), nil return tplString.String(), nil
} }
func (state *HelmState) applyDefaultsTo(spec ReleaseSpec) ReleaseSpec { func (state *HelmState) applyDefaultsTo(spec *ReleaseSpec) {
if state.Namespace != "" { if state.Namespace != "" {
spec.Namespace = state.Namespace spec.Namespace = state.Namespace
} }
return spec
} }
func (state *HelmState) SyncRepos(helm helmexec.Interface) []error { func (state *HelmState) SyncRepos(helm helmexec.Interface) []error {
@ -156,7 +155,7 @@ func (state *HelmState) SyncRepos(helm helmexec.Interface) []error {
func (state *HelmState) SyncReleases(helm helmexec.Interface, additionalValues []string, workerLimit int) []error { func (state *HelmState) SyncReleases(helm helmexec.Interface, additionalValues []string, workerLimit int) []error {
errs := []error{} errs := []error{}
jobQueue := make(chan ReleaseSpec) jobQueue := make(chan *ReleaseSpec)
doneQueue := make(chan bool) doneQueue := make(chan bool)
errQueue := make(chan error) errQueue := make(chan error)
@ -166,8 +165,8 @@ 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 {
releaseWithDefaults := state.applyDefaultsTo(release) state.applyDefaultsTo(release)
flags, flagsErr := flagsForRelease(helm, state.BaseChartPath, &releaseWithDefaults) flags, flagsErr := flagsForRelease(helm, state.BaseChartPath, release)
if flagsErr != nil { if flagsErr != nil {
errQueue <- flagsErr errQueue <- flagsErr
doneQueue <- true doneQueue <- true
@ -199,8 +198,8 @@ func (state *HelmState) SyncReleases(helm helmexec.Interface, additionalValues [
} }
go func() { go func() {
for _, release := range state.Releases { for i := 0; i < len(state.Releases); i++ {
jobQueue <- release jobQueue <- &state.Releases[i]
} }
close(jobQueue) close(jobQueue)
}() }()

View File

@ -216,8 +216,8 @@ func TestHelmState_applyDefaultsTo(t *testing.T) {
Repositories: tt.fields.Repositories, Repositories: tt.fields.Repositories,
Releases: tt.fields.Releases, Releases: tt.fields.Releases,
} }
if got := state.applyDefaultsTo(tt.args.spec); !reflect.DeepEqual(got, tt.want) { if state.applyDefaultsTo(&tt.args.spec); !reflect.DeepEqual(tt.args.spec, tt.want) {
t.Errorf("HelmState.applyDefaultsTo() = %v, want %v", got, tt.want) t.Errorf("HelmState.applyDefaultsTo() = %v, want %v", tt.args.spec, tt.want)
} }
}) })
} }