introduce pull --include-deps

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
This commit is contained in:
Nicolas De Loof 2021-03-02 08:49:55 +01:00
parent e6b8048e56
commit 0a05bbc84e
1 changed files with 12 additions and 1 deletions

View File

@ -29,6 +29,7 @@ type pullOptions struct {
*projectOptions *projectOptions
composeOptions composeOptions
quiet bool quiet bool
includeDeps bool
} }
func pullCommand(p *projectOptions) *cobra.Command { func pullCommand(p *projectOptions) *cobra.Command {
@ -43,6 +44,7 @@ func pullCommand(p *projectOptions) *cobra.Command {
}, },
} }
cmd.Flags().BoolVarP(&opts.quiet, "quiet", "q", false, "Pull without printing progress information") cmd.Flags().BoolVarP(&opts.quiet, "quiet", "q", false, "Pull without printing progress information")
cmd.Flags().BoolVar(&opts.includeDeps, "include-deps", false, "Also pull services declared as dependencies")
return cmd return cmd
} }
@ -57,6 +59,15 @@ func runPull(ctx context.Context, opts pullOptions, services []string) error {
return err return err
} }
if !opts.includeDeps {
enabled, err := project.GetServices(services...)
if err != nil {
return err
}
project.DisabledServices = append(project.DisabledServices, project.Services...)
project.Services = enabled
}
if opts.quiet { if opts.quiet {
return c.ComposeService().Pull(ctx, project) return c.ComposeService().Pull(ctx, project)
} }