| 15 | } |
| 16 | |
| 17 | func Contract(ctx context.Context, logger *zap.Logger, _ *config.Config, serviceFactory ServiceFactory, cmdConfigurator CmdConfigurator) *cobra.Command { |
| 18 | var cmd = &cobra.Command{ |
| 19 | Use: "contract", |
| 20 | Short: "Manage keploy contracts", |
| 21 | } |
| 22 | |
| 23 | cmd.AddCommand(Generate(ctx, logger, serviceFactory, cmdConfigurator)) |
| 24 | cmd.AddCommand(Download(ctx, logger, serviceFactory, cmdConfigurator)) |
| 25 | cmd.AddCommand(Validate(ctx, logger, serviceFactory, cmdConfigurator)) |
| 26 | for _, subCmd := range cmd.Commands() { |
| 27 | err := cmdConfigurator.AddFlags(subCmd) |
| 28 | if err != nil { |
| 29 | utils.LogError(logger, err, "failed to add flags to command", zap.String("command", subCmd.Name())) |
| 30 | } |
| 31 | } |
| 32 | return cmd |
| 33 | } |
| 34 | |
| 35 | func Generate(ctx context.Context, logger *zap.Logger, serviceFactory ServiceFactory, cmdConfigurator CmdConfigurator) *cobra.Command { |
| 36 | var cmd = &cobra.Command{ |