Documentation
¶
Overview ¶
Package rule_type provides the CLI subcommand for managing rules
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var RuleType_applyCmd = &cobra.Command{ Use: "apply", Short: "Apply a rule type within a minder control plane", Long: `The minder rule type apply subcommand lets you create or update rule types for a project within a minder control plane.`, PreRun: func(cmd *cobra.Command, args []string) { if err := viper.BindPFlags(cmd.Flags()); err != nil { fmt.Fprintf(os.Stderr, "Error binding flags: %s\n", err) } }, RunE: func(cmd *cobra.Command, args []string) error { files, err := cmd.Flags().GetStringArray("file") if err != nil { return fmt.Errorf("error getting file flag: %w", err) } if err := validateFilesArg(files); err != nil { return fmt.Errorf("error validating file arg: %w", err) } conn, err := util.GrpcForCommand(cmd, viper.GetViper()) if err != nil { return fmt.Errorf("error getting grpc connection: %w", err) } defer conn.Close() client := minderv1.NewProfileServiceClient(conn) expfiles, err := util.ExpandFileArgs(files) if err != nil { return fmt.Errorf("error expanding file args: %w", err) } table := initializeTable(cmd) ctx, cancel := util.GetAppContext() defer cancel() applyFunc := func(fileName string, rt *minderv1.RuleType) (*minderv1.RuleType, error) { createResp, err := client.CreateRuleType(ctx, &minderv1.CreateRuleTypeRequest{ RuleType: rt, }) if err == nil { return createResp.RuleType, nil } st, ok := status.FromError(err) if !ok { return nil, fmt.Errorf("error creating rule type from %s: %w", fileName, err) } if st.Code() != codes.AlreadyExists { return nil, fmt.Errorf("error creating rule type from %s: %w", fileName, err) } updateResp, err := client.UpdateRuleType(ctx, &minderv1.UpdateRuleTypeRequest{ RuleType: rt, }) if err != nil { return nil, fmt.Errorf("error updating rule type from %s: %w", fileName, err) } return updateResp.RuleType, nil } for _, f := range expfiles { if shouldSkipFile(f) { continue } if err := execOnOneRuleType(table, f, os.Stdin, applyFunc); err != nil { return fmt.Errorf("error creating rule type %s: %w", f, err) } } table.Render() return nil }, }
RuleType_applyCmd represents the profile create command
View Source
var RuleType_createCmd = &cobra.Command{ Use: "create", Short: "Create a rule type within a minder control plane", Long: `The minder rule type create subcommand lets you create new rule types for a project within a minder control plane.`, PreRun: func(cmd *cobra.Command, args []string) { if err := viper.BindPFlags(cmd.Flags()); err != nil { fmt.Fprintf(os.Stderr, "Error binding flags: %s\n", err) } }, RunE: func(cmd *cobra.Command, args []string) error { files, err := cmd.Flags().GetStringArray("file") if err != nil { return fmt.Errorf("error getting file flag: %w", err) } if err := validateFilesArg(files); err != nil { return fmt.Errorf("error validating file arg: %w", err) } conn, err := util.GrpcForCommand(cmd, viper.GetViper()) if err != nil { return fmt.Errorf("error getting grpc connection: %w", err) } defer conn.Close() client := minderv1.NewProfileServiceClient(conn) expfiles, err := util.ExpandFileArgs(files) if err != nil { return fmt.Errorf("error expanding file args: %w", err) } table := initializeTable(cmd) ctx, cancel := util.GetAppContext() defer cancel() createFunc := func(fileName string, rt *minderv1.RuleType) (*minderv1.RuleType, error) { resprt, err := client.CreateRuleType(ctx, &minderv1.CreateRuleTypeRequest{ RuleType: rt, }) if err != nil { return nil, fmt.Errorf("error creating rule type from %s: %w", fileName, err) } return resprt.RuleType, nil } for _, f := range expfiles { if shouldSkipFile(f) { continue } if err := execOnOneRuleType(table, f, os.Stdin, createFunc); err != nil { return fmt.Errorf("error creating rule type %s: %w", f, err) } } table.Render() return nil }, }
RuleType_createCmd represents the profile create command
View Source
var RuleType_updateCmd = &cobra.Command{ Use: "update", Short: "Update a rule type within a minder control plane", Long: `The minder rule type update subcommand lets you update rule types for a project within a minder control plane.`, PreRun: func(cmd *cobra.Command, args []string) { if err := viper.BindPFlags(cmd.Flags()); err != nil { fmt.Fprintf(os.Stderr, "Error binding flags: %s\n", err) } }, RunE: func(cmd *cobra.Command, args []string) error { files, err := cmd.Flags().GetStringArray("file") if err != nil { return fmt.Errorf("error getting file flag: %w", err) } if err := validateFilesArg(files); err != nil { return fmt.Errorf("error validating file arg: %w", err) } conn, err := util.GrpcForCommand(cmd, viper.GetViper()) if err != nil { return fmt.Errorf("error getting grpc connection: %w", err) } defer conn.Close() client := minderv1.NewProfileServiceClient(conn) expfiles, err := util.ExpandFileArgs(files) if err != nil { return fmt.Errorf("error expanding file args: %w", err) } table := initializeTable(cmd) ctx, cancel := util.GetAppContext() defer cancel() updateFunc := func(fileName string, rt *minderv1.RuleType) (*minderv1.RuleType, error) { resprt, err := client.UpdateRuleType(ctx, &minderv1.UpdateRuleTypeRequest{ RuleType: rt, }) if err != nil { return nil, fmt.Errorf("error creating rule typefrom %s: %w", fileName, err) } return resprt.RuleType, nil } for _, f := range expfiles { if shouldSkipFile(f) { continue } if err := execOnOneRuleType(table, f, os.Stdin, updateFunc); err != nil { return fmt.Errorf("error creating rule type %s: %w", f, err) } } table.Render() return nil }, }
RuleType_updateCmd represents the profile update command
Functions ¶
This section is empty.
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.