Skip to content

Commit 807273c

Browse files
committed
fix: move creation of the overrides values file to a separate function
fix: reorder the reassigment of args slice to keep the order of the flags
1 parent 98dc524 commit 807273c

File tree

1 file changed

+34
-23
lines changed
  • pkg/skaffold/render/renderer/helm

1 file changed

+34
-23
lines changed

pkg/skaffold/render/renderer/helm/args.go

Lines changed: 34 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -33,12 +33,45 @@ func (h Helm) depBuildArgs(chartPath string) []string {
3333
return args
3434
}
3535

36+
func createOverridesValuesFile(r latest.HelmRelease) (string, error) {
37+
if len(r.Overrides.Values) > 0 {
38+
overrides, err := yaml.Marshal(r.Overrides)
39+
if err != nil {
40+
return "", helm.UserErr("cannot marshal overrides to create overrides values.yaml", err)
41+
}
42+
43+
if err := os.WriteFile(constants.HelmOverridesFilename, overrides, 0o666); err != nil {
44+
return "", helm.UserErr(fmt.Sprintf("cannot create file %q", constants.HelmOverridesFilename), err)
45+
}
46+
47+
defer func() {
48+
os.Remove(constants.HelmOverridesFilename)
49+
}()
50+
51+
return constants.HelmOverridesFilename, nil
52+
}
53+
return "", nil
54+
}
55+
3656
func (h Helm) templateArgs(releaseName string, release latest.HelmRelease, builds []graph.Artifact, namespace string, additionalArgs []string) ([]string, error) {
37-
var err error
3857
args := []string{"template", releaseName, helm.ChartSource(release)}
3958
args = append(args, h.config.Flags.Template...)
4059
args = append(args, additionalArgs...)
4160

61+
overrideArgs, overrideArgsErr := helm.ConstructOverrideArgs(&release, builds, args, h.manifestOverrides)
62+
if overrideArgsErr != nil {
63+
return nil, helm.UserErr("construct override args", overrideArgsErr)
64+
}
65+
args = append(args, overrideArgs...)
66+
67+
overridesFile, overridesFileErr := createOverridesValuesFile(release)
68+
if overridesFileErr != nil {
69+
return nil, overridesFileErr
70+
}
71+
if overridesFile != "" {
72+
args = append(args, "-f", overridesFile)
73+
}
74+
4275
if release.Packaged == nil && release.Version != "" {
4376
args = append(args, "--version", release.Version)
4477
}
@@ -54,27 +87,5 @@ func (h Helm) templateArgs(releaseName string, release latest.HelmRelease, build
5487
args = append(args, "--skip-tests")
5588
}
5689

57-
args, err = helm.ConstructOverrideArgs(&release, builds, args, h.manifestOverrides)
58-
if err != nil {
59-
return nil, helm.UserErr("construct override args", err)
60-
}
61-
62-
if len(release.Overrides.Values) > 0 {
63-
overrides, err := yaml.Marshal(release.Overrides)
64-
if err != nil {
65-
return nil, helm.UserErr("cannot marshal overrides to create overrides values.yaml", err)
66-
}
67-
68-
if err := os.WriteFile(constants.HelmOverridesFilename, overrides, 0o666); err != nil {
69-
return nil, helm.UserErr(fmt.Sprintf("cannot create file %q", constants.HelmOverridesFilename), err)
70-
}
71-
72-
defer func() {
73-
os.Remove(constants.HelmOverridesFilename)
74-
}()
75-
76-
args = append(args, "-f", constants.HelmOverridesFilename)
77-
}
78-
7990
return args, nil
8091
}

0 commit comments

Comments
 (0)