// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. package csp_enablement_account import ( "fmt" "github.com/databricks/cli/cmd/root" "github.com/databricks/cli/libs/cmdio" "github.com/databricks/cli/libs/flags" "github.com/databricks/databricks-sdk-go/service/settings" "github.com/spf13/cobra" ) // Slice with functions to override default command behavior. // Functions can be added from the `init()` function in manually curated files in this directory. var cmdOverrides []func(*cobra.Command) func New() *cobra.Command { cmd := &cobra.Command{ Use: "csp-enablement-account", Short: `The compliance security profile settings at the account level control whether to enable it for new workspaces.`, Long: `The compliance security profile settings at the account level control whether to enable it for new workspaces. By default, this account-level setting is disabled for new workspaces. After workspace creation, account admins can enable the compliance security profile individually for each workspace. This settings can be disabled so that new workspaces do not have compliance security profile enabled by default.`, } // Add methods cmd.AddCommand(newGet()) cmd.AddCommand(newUpdate()) // Apply optional overrides to this command. for _, fn := range cmdOverrides { fn(cmd) } return cmd } // start get command // Slice with functions to override default command behavior. // Functions can be added from the `init()` function in manually curated files in this directory. var getOverrides []func( *cobra.Command, *settings.GetCspEnablementAccountSettingRequest, ) func newGet() *cobra.Command { cmd := &cobra.Command{} var getReq settings.GetCspEnablementAccountSettingRequest // TODO: short flags cmd.Flags().StringVar(&getReq.Etag, "etag", getReq.Etag, `etag used for versioning.`) cmd.Use = "get" cmd.Short = `Get the compliance security profile setting for new workspaces.` cmd.Long = `Get the compliance security profile setting for new workspaces. Gets the compliance security profile setting for new workspaces.` cmd.Annotations = make(map[string]string) cmd.Args = func(cmd *cobra.Command, args []string) error { check := root.ExactArgs(0) return check(cmd, args) } cmd.PreRunE = root.MustAccountClient cmd.RunE = func(cmd *cobra.Command, args []string) (err error) { ctx := cmd.Context() a := root.AccountClient(ctx) response, err := a.Settings.CspEnablementAccount().Get(ctx, getReq) if err != nil { return err } return cmdio.Render(ctx, response) } // Disable completions since they are not applicable. // Can be overridden by manual implementation in `override.go`. cmd.ValidArgsFunction = cobra.NoFileCompletions // Apply optional overrides to this command. for _, fn := range getOverrides { fn(cmd, &getReq) } return cmd } // start update command // Slice with functions to override default command behavior. // Functions can be added from the `init()` function in manually curated files in this directory. var updateOverrides []func( *cobra.Command, *settings.UpdateCspEnablementAccountSettingRequest, ) func newUpdate() *cobra.Command { cmd := &cobra.Command{} var updateReq settings.UpdateCspEnablementAccountSettingRequest var updateJson flags.JsonFlag // TODO: short flags cmd.Flags().Var(&updateJson, "json", `either inline JSON string or @path/to/file.json with request body`) cmd.Use = "update" cmd.Short = `Update the compliance security profile setting for new workspaces.` cmd.Long = `Update the compliance security profile setting for new workspaces. Updates the value of the compliance security profile setting for new workspaces.` cmd.Annotations = make(map[string]string) cmd.PreRunE = root.MustAccountClient cmd.RunE = func(cmd *cobra.Command, args []string) (err error) { ctx := cmd.Context() a := root.AccountClient(ctx) if cmd.Flags().Changed("json") { diags := updateJson.Unmarshal(&updateReq) if diags.HasError() { return diags.Error() } if len(diags) > 0 { err := cmdio.RenderDiagnosticsToErrorOut(ctx, diags) if err != nil { return err } } } else { return fmt.Errorf("please provide command input in JSON format by specifying the --json flag") } response, err := a.Settings.CspEnablementAccount().Update(ctx, updateReq) if err != nil { return err } return cmdio.Render(ctx, response) } // Disable completions since they are not applicable. // Can be overridden by manual implementation in `override.go`. cmd.ValidArgsFunction = cobra.NoFileCompletions // Apply optional overrides to this command. for _, fn := range updateOverrides { fn(cmd, &updateReq) } return cmd } // end service CspEnablementAccount