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

Commit 913c753

Browse files
Merge pull request #231 from vdemeester/load-settings-after-extract
Load settings after `packager.Extract`
2 parents 79d3902 + 0253e41 commit 913c753

4 files changed

Lines changed: 16 additions & 21 deletions

File tree

cmd/docker-app/deploy.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,11 @@ func deployCmd() *cobra.Command {
5454
}
5555

5656
func runDeploy(appname string, opts deployOptions) error {
57+
appname, cleanup, err := packager.Extract(appname)
58+
if err != nil {
59+
return err
60+
}
61+
defer cleanup()
5762
deployOrchestrator := opts.deployOrchestrator
5863
if do, ok := os.LookupEnv("DOCKER_ORCHESTRATOR"); ok {
5964
deployOrchestrator = do
@@ -65,11 +70,6 @@ func runDeploy(appname string, opts deployOptions) error {
6570
if err != nil {
6671
return err
6772
}
68-
appname, cleanup, err := packager.Extract(appname)
69-
if err != nil {
70-
return err
71-
}
72-
defer cleanup()
7373
rendered, err := renderer.Render(appname, opts.deployComposeFiles, opts.deploySettingsFiles, d)
7474
if err != nil {
7575
return err

cmd/docker-app/helm.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,15 +22,15 @@ func helmCmd() *cobra.Command {
2222
Long: `Generate a Helm chart for the application.`,
2323
Args: cli.RequiresMaxArgs(1),
2424
RunE: func(cmd *cobra.Command, args []string) error {
25-
d, err := parseSettings(helmEnv)
25+
appname, cleanup, err := packager.Extract(firstOrEmpty(args))
2626
if err != nil {
2727
return err
2828
}
29-
appname, cleanup, err := packager.Extract(firstOrEmpty(args))
29+
defer cleanup()
30+
d, err := parseSettings(helmEnv)
3031
if err != nil {
3132
return err
3233
}
33-
defer cleanup()
3434
return renderer.Helm(appname, helmComposeFiles, helmSettingsFile, d, helmRender)
3535
},
3636
}

cmd/docker-app/image-add.go

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
package main
22

33
import (
4-
"fmt"
54
"os"
6-
"strings"
75

86
"github.com/docker/app/internal"
97
"github.com/docker/app/internal/image"
@@ -26,20 +24,17 @@ images it uses, and saves them from the local docker daemon to the images/
2624
subdirectory.`,
2725
Args: cobra.MinimumNArgs(1),
2826
RunE: func(cmd *cobra.Command, args []string) error {
29-
d := make(map[string]string)
30-
for _, v := range imageAddEnv {
31-
kv := strings.SplitN(v, "=", 2)
32-
if len(kv) != 2 {
33-
return fmt.Errorf("Malformed env input: '%s'", v)
34-
}
35-
d[kv[0]] = kv[1]
36-
}
3727
oappname := args[0]
3828
appname, cleanup, err := packager.Extract(oappname)
3929
if err != nil {
4030
return err
4131
}
4232
defer cleanup()
33+
34+
d, err := parseSettings(imageAddEnv)
35+
if err != nil {
36+
return err
37+
}
4338
if err := image.Add(appname, args[1:], imageAddComposeFiles, imageAddSettingsFile, d); err != nil {
4439
return err
4540
}

cmd/docker-app/render.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,15 +26,15 @@ func renderCmd() *cobra.Command {
2626
Long: `Render the Compose file for the application.`,
2727
Args: cli.RequiresMaxArgs(1),
2828
RunE: func(cmd *cobra.Command, args []string) error {
29-
d, err := parseSettings(renderEnv)
29+
appname, cleanup, err := packager.Extract(firstOrEmpty(args))
3030
if err != nil {
3131
return err
3232
}
33-
appname, cleanup, err := packager.Extract(firstOrEmpty(args))
33+
defer cleanup()
34+
d, err := parseSettings(renderEnv)
3435
if err != nil {
3536
return err
3637
}
37-
defer cleanup()
3838
rendered, err := renderer.Render(appname, renderComposeFiles, renderSettingsFile, d)
3939
if err != nil {
4040
return err

0 commit comments

Comments
 (0)