github.com/c3pm-labs/c3pm@v0.3.0/cmd/add.go (about) 1 package cmd 2 3 import ( 4 "fmt" 5 "github.com/c3pm-labs/c3pm/config" 6 "github.com/c3pm-labs/c3pm/ctpm" 7 "github.com/spf13/cobra" 8 ) 9 10 var addCmdFlags = ctpm.AddOptions{} 11 12 var addCmd = &cobra.Command{ 13 Use: "add [dependencies...]", 14 Short: "Add one or more new dependency", 15 Args: cobra.MinimumNArgs(1), 16 RunE: func(cmd *cobra.Command, args []string) error { 17 pc, err := config.Load(".") 18 if err != nil { 19 return fmt.Errorf("failed to read c3pm.yml: %w", err) 20 } 21 addCmdFlags.Dependencies = args 22 err = ctpm.Add(pc, addCmdFlags) 23 if err != nil { 24 return fmt.Errorf("failed to add dependencies: %w", err) 25 } 26 return nil 27 }, 28 } 29 30 func init() { 31 addCmd.Flags().BoolVarP(&addCmdFlags.Force, "force", "f", false, "Ignore cache.") 32 addCmd.Flags().StringVarP(&addCmdFlags.RegistryURL, "registry-url", "r", "", "Select specific registry to use.") 33 }