Uh oh!
There was an error while loading. Please reload this page.
build: only show buildkit-specific flags if buildkit is enabled - #1427
Conversation
Codecov Report
@@ Coverage Diff @@## master #1427 +/- ##
=========================================
- Coverage 54.22% 54.2% -0.03%
=========================================
Files 289 289 Lines 19359 19378 +19 =========================================
+ Hits 10498 10503 +5 - Misses 8185 8199 +14
Partials 676 676 |
thaJeztah
left a comment
There was a problem hiding this comment.
changes LGTM, but left a command on updating the flag descriptions
Uh oh!
There was an error while loading. Please reload this page.
| flags.StringArrayVar(&options.secrets, "secret", []string{}, "Secret file to expose to the build (only if BuildKit enabled): id=mysecret,src=/local/secret") | ||
| flags.SetAnnotation("secret", "version", []string{"1.39"}) | ||
| flags.SetAnnotation("secret", "buildkit", nil) |
This comment was marked as resolved.
This comment was marked as resolved.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
6a509ee to
efeec06Comparetiborvass
commented
Oct 10, 2018
@thaJeztah@AkihiroSuda fixed! |
Probably, we should explicitly reject cc @tonistiigi |
AkihiroSuda
commented
Oct 10, 2018
|
efeec06 to
37ac307Comparetiborvass
commented
Oct 10, 2018
@AkihiroSuda fixed. I didn't error out for squash yet, unless we agree it's needed. |
| serverInfo ServerInfo | ||
| clientInfo ClientInfo | ||
| contentTrust bool | ||
| buildkitEnabled *bool |
There was a problem hiding this comment.
linting is failing on this one;
cli/command/cli.go:73:2:warning: field buildkitEnabled is unused (U1000) (unused)
| // BuildKitEnabled returns whether buildkit is enabled either through a daemon setting | ||
| // or otherwise the client-side DOCKER_BUILDKIT environment variable | ||
| func BuildKitEnabled(cli interface{ ServerInfo() ServerInfo }) (bool, error) { |
There was a problem hiding this comment.
func BuildKitEnabled(si ServerInfo) (bool, error) {
fcefefd to
b98f5d5CompareSigned-off-by: Tibor Vass <tibor@docker.com>
b98f5d5 to
bbd01feCompare| if _, ok := f.Annotations["experimentalCLI"]; ok && !hasExperimentalCLI { | ||
| errs = append(errs, fmt.Sprintf("\"--%s\" is on a Docker cli with experimental cli features enabled", f.Name)) | ||
| } | ||
| // buildkit-specific flags are noop when buildkit is not enabled, so we do not add an error in that case |
There was a problem hiding this comment.
Maybe we can still print logrus.Warn warnings, especially for NOP --squash with BuildKit mode
There was a problem hiding this comment.
Could make sense to inform them that an option is only supported with/without buildkit, and will be ignored.
Given that we're already ignoring those flags in the current code, I think that'd be good to do separately, in a follow-up;
DOCKER_BUILDKIT=1 docker build --squash .
[+] Building 0.3s (4/4) FINISHED => local://context (.dockerignore) 0.0s
=> => transferring context: 2B 0.0s
=> local://dockerfile (Dockerfile) 0.0s
=> => transferring dockerfile: 31B 0.0s
=> CACHED docker-image://docker.io/library/alpine:latest 0.0s
=> exporting to image 0.0s
=> => exporting layers 0.0s
=> => writing image sha256:0b4ed36840824a86314da6264a95047c664f3c2fe90d0b1a6ddb118e20f106a2 DOCKER_BUILDKIT=0 docker build --progress=plain .
Sending build context to Docker daemon 2.048kB
Step 1/1 : FROM alpine
---> 11cd0b38bc3c
Successfully built 11cd0b38bc3c
| if _, ok := f.Annotations["experimentalCLI"]; ok && !hasExperimentalCLI { | ||
| errs = append(errs, fmt.Sprintf("\"--%s\" is on a Docker cli with experimental cli features enabled", f.Name)) | ||
| } | ||
| // buildkit-specific flags are noop when buildkit is not enabled, so we do not add an error in that case |
There was a problem hiding this comment.
Could make sense to inform them that an option is only supported with/without buildkit, and will be ignored.
Given that we're already ignoring those flags in the current code, I think that'd be good to do separately, in a follow-up;
DOCKER_BUILDKIT=1 docker build --squash .
[+] Building 0.3s (4/4) FINISHED => local://context (.dockerignore) 0.0s
=> => transferring context: 2B 0.0s
=> local://dockerfile (Dockerfile) 0.0s
=> => transferring dockerfile: 31B 0.0s
=> CACHED docker-image://docker.io/library/alpine:latest 0.0s
=> exporting to image 0.0s
=> => exporting layers 0.0s
=> => writing image sha256:0b4ed36840824a86314da6264a95047c664f3c2fe90d0b1a6ddb118e20f106a2 DOCKER_BUILDKIT=0 docker build --progress=plain .
Sending build context to Docker daemon 2.048kB
Step 1/1 : FROM alpine
---> 11cd0b38bc3c
Successfully built 11cd0b38bc3c
Signed-off-by: Tibor Vass tibor@docker.com