Merge pull request #7 from natevecc/update-env-var-errors
Fixed env vars error handling
This commit is contained in:
		
						commit
						2abc93cc62
					
				|  | @ -86,18 +86,19 @@ func (state *HelmState) SyncCharts(helm helmexec.Interface, additonalValues []st | ||||||
| 	for _, chart := range state.Charts { | 	for _, chart := range state.Charts { | ||||||
| 		wg.Add(1) | 		wg.Add(1) | ||||||
| 		go func(wg *sync.WaitGroup, chart ChartSpec) { | 		go func(wg *sync.WaitGroup, chart ChartSpec) { | ||||||
| 			flags, err := flagsForChart(&chart) | 			flags, flagsErr := flagsForChart(&chart) | ||||||
|  | 			if flagsErr != nil { | ||||||
|  | 				errs = append(errs, flagsErr) | ||||||
|  | 			} | ||||||
| 			for _, value := range additonalValues { | 			for _, value := range additonalValues { | ||||||
| 				wd, err := os.Getwd() | 				wd, wdErr := os.Getwd() | ||||||
| 				if err != nil { | 				if wdErr != nil { | ||||||
| 					errs = append(errs, err) | 					errs = append(errs, wdErr) | ||||||
| 				} | 				} | ||||||
| 				valfile := filepath.Join(wd, value) | 				valfile := filepath.Join(wd, value) | ||||||
| 				flags = append(flags, "--values", valfile) | 				flags = append(flags, "--values", valfile) | ||||||
| 			} | 			} | ||||||
| 			if err != nil { | 			if len(errs) == 0 { | ||||||
| 				errs = append(errs, err) |  | ||||||
| 			} else { |  | ||||||
| 				if err := helm.SyncChart(chart.Name, chart.Chart, flags...); err != nil { | 				if err := helm.SyncChart(chart.Name, chart.Chart, flags...); err != nil { | ||||||
| 					errs = append(errs, err) | 					errs = append(errs, err) | ||||||
| 				} | 				} | ||||||
|  | @ -164,14 +165,21 @@ func flagsForChart(chart *ChartSpec) ([]string, error) { | ||||||
| 	} | 	} | ||||||
| 	if len(chart.EnvValues) > 0 { | 	if len(chart.EnvValues) > 0 { | ||||||
| 		val := []string{} | 		val := []string{} | ||||||
|  | 		envValErrs := []string{} | ||||||
| 		for _, set := range chart.EnvValues { | 		for _, set := range chart.EnvValues { | ||||||
| 			value, isSet := os.LookupEnv(set.Value) | 			value, isSet := os.LookupEnv(set.Value) | ||||||
| 			if isSet { | 			if isSet { | ||||||
| 				val = append(val, fmt.Sprintf("%s=%s", set.Name, value)) | 				val = append(val, fmt.Sprintf("%s=%s", set.Name, value)) | ||||||
| 			} else { | 			} else { | ||||||
| 				return nil, errors.New(fmt.Sprintf("Could not find environment var: %s. Please make sure it is set and try again.", set.Name)) | 				errMsg := fmt.Sprintf("\t%s", set.Value) | ||||||
|  | 				envValErrs = append(envValErrs, errMsg) | ||||||
| 			} | 			} | ||||||
| 		} | 		} | ||||||
|  | 		if len(envValErrs) != 0 { | ||||||
|  | 			joinedEnvVals := strings.Join(envValErrs, "\n") | ||||||
|  | 			errMsg := fmt.Sprintf("Environment Variables not found. Please make sure they are set and try again:\n%s", joinedEnvVals) | ||||||
|  | 			return nil, errors.New(errMsg) | ||||||
|  | 		} | ||||||
| 		flags = append(flags, "--set", strings.Join(val, ",")) | 		flags = append(flags, "--set", strings.Join(val, ",")) | ||||||
| 	} | 	} | ||||||
| 	return flags, nil | 	return flags, nil | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue