diff options
author | Dan Duvall <dduvall@wikimedia.org> | 2017-04-25 11:03:33 -0700 |
---|---|---|
committer | Dan Duvall <dduvall@wikimedia.org> | 2017-04-25 11:03:33 -0700 |
commit | b993d5c7398fd5bba968d400d5731df7d321a557 (patch) | |
tree | 9e8dce7061917bf140fc0722dbc4aabd6e08fe91 | |
parent | 006b349e3341e16dee5c1512a863b938d0156020 (diff) | |
download | blubber-b993d5c7398fd5bba968d400d5731df7d321a557.tar.gz |
Invert `copiestree` feature as `sharedvolume`
-rw-r--r-- | blubber.example.json | 4 | ||||
-rw-r--r-- | config/common.go | 4 | ||||
-rw-r--r-- | docker/compiler.go | 6 |
3 files changed, 8 insertions, 6 deletions
diff --git a/blubber.example.json b/blubber.example.json index 8c8a6f5..b911764 100644 --- a/blubber.example.json +++ b/blubber.example.json @@ -5,12 +5,12 @@ "run": { "in": "/srv/service", "as": "runuser", "uid": 666, "gid": 666 }, "variants": { "development": { - "apt": { "packages": ["libjpeg-dev", "libyaml-dev"] } + "apt": { "packages": ["libjpeg-dev", "libyaml-dev"] }, + "sharedvolume": true }, "test": { "includes": ["development"], "apt": { "packages": ["chromium"] }, - "copiestree": true, "entrypoint": ["npm", "test"] }, "production": { diff --git a/config/common.go b/config/common.go index 782c454..492171e 100644 --- a/config/common.go +++ b/config/common.go @@ -5,7 +5,7 @@ type CommonConfig struct { Apt AptConfig `json:apt` Npm NpmConfig `json:npm` Run RunConfig `json:run` - CopiesTree bool `json:copiestree` + SharedVolume bool `json:sharedvolume` EntryPoint []string `json:entrypoint` } @@ -18,7 +18,7 @@ func (cc1 *CommonConfig) Merge(cc2 CommonConfig) { cc1.Npm.Merge(cc2.Npm) cc1.Run.Merge(cc2.Run) - cc1.CopiesTree = cc1.CopiesTree || cc2.CopiesTree + cc1.SharedVolume = cc1.SharedVolume || cc2.SharedVolume if len(cc1.EntryPoint) < 1 { cc1.EntryPoint = cc2.EntryPoint diff --git a/docker/compiler.go b/docker/compiler.go index 5727b11..ed3cd48 100644 --- a/docker/compiler.go +++ b/docker/compiler.go @@ -45,8 +45,10 @@ func CompileStage(buffer *bytes.Buffer, stage string, vcfg *config.VariantConfig Writeln(buffer, "WORKDIR ", vcfg.Run.In) } - if vcfg.CopiesTree { - Writeln(buffer, "COPY . .") + if vcfg.SharedVolume { + Writeln(buffer, "VOLUME [\"", vcfg.Run.In, "\"]") + } else { + Writeln(buffer, "COPY . \"", vcfg.Run.In, "\"") } CompileToCommands(buffer, vcfg.Npm) |