Skip to content
This repository was archived by the owner on Jul 18, 2025. It is now read-only.

Commit 26d7657

Browse files
author
Vincent Demeester
authored
Merge pull request #323 from vdemeester/helm-refacto-cover
Some more `helm` package refactoring
2 parents e077d85 + 0fee415 commit 26d7657

9 files changed

Lines changed: 324 additions & 638 deletions

File tree

internal/helm/helm.go

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,13 @@ import (
1111
yaml "gopkg.in/yaml.v2"
1212

1313
"github.com/docker/app/internal"
14+
"github.com/docker/app/internal/helm/templateconversion"
15+
"github.com/docker/app/internal/helm/templateloader"
16+
"github.com/docker/app/internal/helm/templatev1beta2"
1417
"github.com/docker/app/internal/packager"
1518
"github.com/docker/app/internal/render"
1619
"github.com/docker/app/internal/settings"
1720
"github.com/docker/app/internal/slices"
18-
"github.com/docker/app/internal/templateconversion"
19-
"github.com/docker/app/internal/templateloader"
20-
"github.com/docker/app/internal/templatev1beta2"
2121
"github.com/docker/app/internal/types"
2222
"github.com/docker/cli/cli/command/stack/kubernetes"
2323
"github.com/docker/cli/cli/compose/loader"
@@ -46,7 +46,7 @@ with the appropriate content (value or template)
4646
// Helm renders an app as an Helm Chart
4747
func Helm(appname string, composeFiles []string, settingsFile []string, env map[string]string, render bool, stackVersion string) error {
4848
targetDir := internal.AppNameFromDir(appname) + ".chart"
49-
if err := os.Mkdir(targetDir, 0755); err != nil && !os.IsExist(err) {
49+
if err := os.MkdirAll(targetDir, 0755); err != nil {
5050
return errors.Wrap(err, "failed to create Chart directory")
5151
}
5252
err := makeChart(appname, targetDir)
@@ -207,13 +207,6 @@ func helmRender(appname string, targetDir string, composeFiles []string, setting
207207
return ioutil.WriteFile(filepath.Join(targetDir, "templates", "stack.yaml"), stackData, 0644)
208208
}
209209

210-
func typeMeta(stackVersion string) metav1.TypeMeta {
211-
return metav1.TypeMeta{
212-
Kind: "stacks.compose.docker.com",
213-
APIVersion: stackVersion,
214-
}
215-
}
216-
217210
func makeChart(appname, targetDir string) error {
218211
metaFile := filepath.Join(appname, internal.MetadataFileName)
219212
metaContent, err := ioutil.ReadFile(metaFile)
@@ -249,6 +242,13 @@ func makeChart(appname, targetDir string) error {
249242
return ioutil.WriteFile(filepath.Join(targetDir, "Chart.yaml"), hmetadata, 0644)
250243
}
251244

245+
func typeMeta(stackVersion string) metav1.TypeMeta {
246+
return metav1.TypeMeta{
247+
Kind: "stacks.compose.docker.com",
248+
APIVersion: stackVersion,
249+
}
250+
}
251+
252252
func objectMeta(appname string) metav1.ObjectMeta {
253253
return metav1.ObjectMeta{
254254
Name: internal.AppNameFromDir(appname),

internal/templateconversion/convert.go renamed to internal/helm/templateconversion/convert.go

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,13 @@ import (
66
"strconv"
77
"strings"
88

9-
composeTypes "github.com/docker/app/internal/templatetypes"
10-
v1beta2 "github.com/docker/app/internal/templatev1beta2"
9+
"github.com/docker/app/internal/helm/templatetypes"
10+
v1beta2 "github.com/docker/app/internal/helm/templatev1beta2"
11+
"github.com/docker/cli/cli/compose/types"
1112
)
1213

1314
// FromComposeConfig converts a compose.Config into a StackSpec
14-
func FromComposeConfig(c *composeTypes.Config) *v1beta2.StackSpec {
15+
func FromComposeConfig(c *templatetypes.Config) *v1beta2.StackSpec {
1516
if c == nil {
1617
return nil
1718
}
@@ -29,7 +30,7 @@ func FromComposeConfig(c *composeTypes.Config) *v1beta2.StackSpec {
2930
}
3031
}
3132

32-
func fromComposeSecrets(s map[string]composeTypes.SecretConfig) map[string]v1beta2.SecretConfig {
33+
func fromComposeSecrets(s map[string]types.SecretConfig) map[string]v1beta2.SecretConfig {
3334
if s == nil {
3435
return nil
3536
}
@@ -48,7 +49,7 @@ func fromComposeSecrets(s map[string]composeTypes.SecretConfig) map[string]v1bet
4849
return m
4950
}
5051

51-
func fromComposeConfigs(s map[string]composeTypes.ConfigObjConfig) map[string]v1beta2.ConfigObjConfig {
52+
func fromComposeConfigs(s map[string]types.ConfigObjConfig) map[string]v1beta2.ConfigObjConfig {
5253
if s == nil {
5354
return nil
5455
}
@@ -67,7 +68,7 @@ func fromComposeConfigs(s map[string]composeTypes.ConfigObjConfig) map[string]v1
6768
return m
6869
}
6970

70-
func fromComposeServiceConfig(s composeTypes.ServiceConfig) v1beta2.ServiceConfig {
71+
func fromComposeServiceConfig(s templatetypes.ServiceConfig) v1beta2.ServiceConfig {
7172
var userID *int64
7273
if s.User != "" {
7374
numerical, err := strconv.Atoi(s.User)
@@ -114,7 +115,7 @@ func fromComposeServiceConfig(s composeTypes.ServiceConfig) v1beta2.ServiceConfi
114115
}
115116
}
116117

117-
func fromComposePorts(ports []composeTypes.ServicePortConfig) []v1beta2.ServicePortConfig {
118+
func fromComposePorts(ports []templatetypes.ServicePortConfig) []v1beta2.ServicePortConfig {
118119
if ports == nil {
119120
return nil
120121
}
@@ -130,7 +131,7 @@ func fromComposePorts(ports []composeTypes.ServicePortConfig) []v1beta2.ServiceP
130131
return p
131132
}
132133

133-
func fromComposeServiceSecrets(secrets []composeTypes.ServiceSecretConfig) []v1beta2.ServiceSecretConfig {
134+
func fromComposeServiceSecrets(secrets []templatetypes.ServiceSecretConfig) []v1beta2.ServiceSecretConfig {
134135
if secrets == nil {
135136
return nil
136137
}
@@ -146,7 +147,7 @@ func fromComposeServiceSecrets(secrets []composeTypes.ServiceSecretConfig) []v1b
146147
return c
147148
}
148149

149-
func fromComposeServiceConfigs(configs []composeTypes.ServiceConfigObjConfig) []v1beta2.ServiceConfigObjConfig {
150+
func fromComposeServiceConfigs(configs []templatetypes.ServiceConfigObjConfig) []v1beta2.ServiceConfigObjConfig {
150151
if configs == nil {
151152
return nil
152153
}
@@ -162,7 +163,7 @@ func fromComposeServiceConfigs(configs []composeTypes.ServiceConfigObjConfig) []
162163
return c
163164
}
164165

165-
func fromComposeHealthcheck(h *composeTypes.HealthCheckConfig) *v1beta2.HealthCheckConfig {
166+
func fromComposeHealthcheck(h *templatetypes.HealthCheckConfig) *v1beta2.HealthCheckConfig {
166167
if h == nil {
167168
return nil
168169
}
@@ -174,7 +175,7 @@ func fromComposeHealthcheck(h *composeTypes.HealthCheckConfig) *v1beta2.HealthCh
174175
}
175176
}
176177

177-
func fromComposePlacement(p composeTypes.Placement) v1beta2.Placement {
178+
func fromComposePlacement(p types.Placement) v1beta2.Placement {
178179
return v1beta2.Placement{
179180
Constraints: fromComposeConstraints(p.Constraints),
180181
}
@@ -222,14 +223,14 @@ func fromComposeConstraints(s []string) *v1beta2.Constraints {
222223
return constraints
223224
}
224225

225-
func fromComposeResources(r composeTypes.Resources) v1beta2.Resources {
226+
func fromComposeResources(r templatetypes.Resources) v1beta2.Resources {
226227
return v1beta2.Resources{
227228
Limits: fromComposeResourcesResource(r.Limits),
228229
Reservations: fromComposeResourcesResource(r.Reservations),
229230
}
230231
}
231232

232-
func fromComposeResourcesResource(r *composeTypes.Resource) *v1beta2.Resource {
233+
func fromComposeResourcesResource(r *templatetypes.Resource) *v1beta2.Resource {
233234
if r == nil {
234235
return nil
235236
}
@@ -239,7 +240,7 @@ func fromComposeResourcesResource(r *composeTypes.Resource) *v1beta2.Resource {
239240
}
240241
}
241242

242-
func fromComposeUpdateConfig(u *composeTypes.UpdateConfig) *v1beta2.UpdateConfig {
243+
func fromComposeUpdateConfig(u *templatetypes.UpdateConfig) *v1beta2.UpdateConfig {
243244
if u == nil {
244245
return nil
245246
}
@@ -248,7 +249,7 @@ func fromComposeUpdateConfig(u *composeTypes.UpdateConfig) *v1beta2.UpdateConfig
248249
}
249250
}
250251

251-
func fromComposeRestartPolicy(r *composeTypes.RestartPolicy) *v1beta2.RestartPolicy {
252+
func fromComposeRestartPolicy(r *types.RestartPolicy) *v1beta2.RestartPolicy {
252253
if r == nil {
253254
return nil
254255
}
@@ -257,7 +258,7 @@ func fromComposeRestartPolicy(r *composeTypes.RestartPolicy) *v1beta2.RestartPol
257258
}
258259
}
259260

260-
func fromComposeServiceVolumeConfig(vs []composeTypes.ServiceVolumeConfig) []v1beta2.ServiceVolumeConfig {
261+
func fromComposeServiceVolumeConfig(vs []templatetypes.ServiceVolumeConfig) []v1beta2.ServiceVolumeConfig {
261262
if vs == nil {
262263
return nil
263264
}
File renamed without changes.

0 commit comments

Comments
 (0)