Add `no-cache` build flag

Signed-off-by: aiordache <anca.iordache@docker.com>
This commit is contained in:
aiordache 2021-03-26 18:13:39 +01:00
parent ee4e85ae1d
commit 3f0ee7072f
3 changed files with 11 additions and 0 deletions

View File

@ -82,6 +82,8 @@ type BuildOptions struct {
Progress string
// Args set build-time args
Args types.Mapping
// NoCache disables cache use
NoCache bool
}
// CreateOptions group options of the Create API

View File

@ -35,6 +35,8 @@ type buildOptions struct {
pull bool
progress string
args []string
noCache bool
memory string
}
func buildCommand(p *projectOptions) *cobra.Command {
@ -65,6 +67,11 @@ func buildCommand(p *projectOptions) *cobra.Command {
cmd.Flags().MarkHidden("compress") //nolint:errcheck
cmd.Flags().Bool("force-rm", true, "Always remove intermediate containers. DEPRECATED")
cmd.Flags().MarkHidden("force-rm") //nolint:errcheck
cmd.Flags().BoolVar(&opts.noCache, "no-cache", false, "Do not use cache when building the image")
cmd.Flags().Bool("no-rm", false, "Do not remove intermediate containers after a successful build. DEPRECATED")
cmd.Flags().MarkHidden("no-rm") //nolint:errcheck
cmd.Flags().StringVarP(&opts.memory, "memory", "m", "", "Set memory limit for the build container. DEPRECATED")
cmd.Flags().MarkHidden("memory") //nolint:errcheck
return cmd
}
@ -85,6 +92,7 @@ func runBuild(ctx context.Context, opts buildOptions, services []string) error {
Pull: opts.pull,
Progress: opts.progress,
Args: types.NewMapping(opts.args),
NoCache: opts.noCache,
})
})
return err

View File

@ -50,6 +50,7 @@ func (s *composeService) Build(ctx context.Context, project *types.Project, opti
}
buildOptions.Pull = options.Pull
buildOptions.BuildArgs = options.Args
buildOptions.NoCache = options.NoCache
opts[imageName] = buildOptions
buildOptions.CacheFrom, err = build.ParseCacheEntry(service.Build.CacheFrom)
if err != nil {