Skip to content

Commit dcb5001

Browse files
authored
Merge pull request #664 from Junnplus/compose-up-build-labels
support labels in compose up --build
2 parents 2aa1ad0 + 0e58b60 commit dcb5001

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

pkg/composer/serviceparser/build.go

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ import (
3131

3232
func parseBuildConfig(c *types.BuildConfig, project *types.Project, imageName string) (*Build, error) {
3333
if unknown := reflectutil.UnknownNonEmptyFields(c,
34-
"Context", "Dockerfile", "Args", "CacheFrom", "Target",
34+
"Context", "Dockerfile", "Args", "CacheFrom", "Target", "Labels",
3535
); len(unknown) > 0 {
3636
logrus.Warnf("Ignoring: build: %+v", unknown)
3737
}
@@ -76,6 +76,12 @@ func parseBuildConfig(c *types.BuildConfig, project *types.Project, imageName st
7676
b.BuildArgs = append(b.BuildArgs, "--target="+c.Target)
7777
}
7878

79+
if c.Labels != nil {
80+
for k, v := range c.Labels {
81+
b.BuildArgs = append(b.BuildArgs, "--label="+k+"="+v)
82+
}
83+
}
84+
7985
b.BuildArgs = append(b.BuildArgs, ctxDir)
8086
return &b, nil
8187
}

pkg/composer/serviceparser/build_test.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,8 @@ services:
4141
build:
4242
context: ./barctx
4343
target: bartgt
44+
labels:
45+
bar: baz
4446
`
4547
comp := testutil.NewComposeDir(t, dockerComposeYAML)
4648
defer comp.CleanUp()
@@ -70,4 +72,5 @@ services:
7072
assert.Equal(t, true, bar.Build.Force)
7173
assert.Equal(t, project.RelativePath("barctx"), lastOf(bar.Build.BuildArgs))
7274
assert.Assert(t, in(bar.Build.BuildArgs, "--target=bartgt"))
75+
assert.Assert(t, in(bar.Build.BuildArgs, "--label=bar=baz"))
7376
}

0 commit comments

Comments
 (0)