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 Progress string
// Args set build-time args // Args set build-time args
Args types.Mapping Args types.Mapping
// NoCache disables cache use
NoCache bool
} }
// CreateOptions group options of the Create API // CreateOptions group options of the Create API

View File

@ -35,6 +35,8 @@ type buildOptions struct {
pull bool pull bool
progress string progress string
args []string args []string
noCache bool
memory string
} }
func buildCommand(p *projectOptions) *cobra.Command { func buildCommand(p *projectOptions) *cobra.Command {
@ -65,6 +67,11 @@ func buildCommand(p *projectOptions) *cobra.Command {
cmd.Flags().MarkHidden("compress") //nolint:errcheck cmd.Flags().MarkHidden("compress") //nolint:errcheck
cmd.Flags().Bool("force-rm", true, "Always remove intermediate containers. DEPRECATED") cmd.Flags().Bool("force-rm", true, "Always remove intermediate containers. DEPRECATED")
cmd.Flags().MarkHidden("force-rm") //nolint:errcheck 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 return cmd
} }
@ -85,6 +92,7 @@ func runBuild(ctx context.Context, opts buildOptions, services []string) error {
Pull: opts.pull, Pull: opts.pull,
Progress: opts.progress, Progress: opts.progress,
Args: types.NewMapping(opts.args), Args: types.NewMapping(opts.args),
NoCache: opts.noCache,
}) })
}) })
return err return err

View File

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