diff --git a/internal/namespaces/get_commands.go b/internal/namespaces/get_commands.go index f4a8ec4878..b67317ee68 100644 --- a/internal/namespaces/get_commands.go +++ b/internal/namespaces/get_commands.go @@ -35,6 +35,7 @@ import ( "github.com/scaleway/scaleway-cli/v2/internal/namespaces/redis/v1" "github.com/scaleway/scaleway-cli/v2/internal/namespaces/registry/v1" secret "github.com/scaleway/scaleway-cli/v2/internal/namespaces/secret/v1alpha1" + serverless_sqldb "github.com/scaleway/scaleway-cli/v2/internal/namespaces/serverless_sqldb/v1alpha1" "github.com/scaleway/scaleway-cli/v2/internal/namespaces/shell" tem "github.com/scaleway/scaleway-cli/v2/internal/namespaces/tem/v1alpha1" versionNamespace "github.com/scaleway/scaleway-cli/v2/internal/namespaces/version" @@ -92,6 +93,7 @@ func GetCommands() *core.Commands { block.GetCommands(), ipam.GetCommands(), jobs.GetCommands(), + serverless_sqldb.GetCommands(), ) //if beta {} diff --git a/internal/namespaces/serverless_sqldb/v1alpha1/custom.go b/internal/namespaces/serverless_sqldb/v1alpha1/custom.go new file mode 100644 index 0000000000..4df8d56219 --- /dev/null +++ b/internal/namespaces/serverless_sqldb/v1alpha1/custom.go @@ -0,0 +1,36 @@ +package serverless_sqldb + +import ( + "github.com/fatih/color" + "github.com/scaleway/scaleway-cli/v2/internal/core" + "github.com/scaleway/scaleway-cli/v2/internal/human" + serverless_sqldb "github.com/scaleway/scaleway-sdk-go/api/serverless_sqldb/v1alpha1" +) + +var ( + sdbSQLDatabaseStatusMarshalSpecs = human.EnumMarshalSpecs{ + serverless_sqldb.DatabaseStatusUnknownStatus: &human.EnumMarshalSpec{Attribute: color.Faint}, + serverless_sqldb.DatabaseStatusError: &human.EnumMarshalSpec{Attribute: color.FgRed}, + serverless_sqldb.DatabaseStatusCreating: &human.EnumMarshalSpec{Attribute: color.FgBlue}, + serverless_sqldb.DatabaseStatusReady: &human.EnumMarshalSpec{Attribute: color.FgGreen}, + serverless_sqldb.DatabaseStatusDeleting: &human.EnumMarshalSpec{Attribute: color.FgBlue}, + serverless_sqldb.DatabaseStatusRestoring: &human.EnumMarshalSpec{Attribute: color.FgBlue}, + serverless_sqldb.DatabaseStatusLocked: &human.EnumMarshalSpec{Attribute: color.FgRed}, + } + + sdbSQLDatabaseBackupStatusMarshalSpecs = human.EnumMarshalSpecs{ + serverless_sqldb.DatabaseBackupStatusUnknownStatus: &human.EnumMarshalSpec{Attribute: color.Faint}, + serverless_sqldb.DatabaseBackupStatusError: &human.EnumMarshalSpec{Attribute: color.FgRed}, + serverless_sqldb.DatabaseBackupStatusReady: &human.EnumMarshalSpec{Attribute: color.FgGreen}, + serverless_sqldb.DatabaseBackupStatusLocked: &human.EnumMarshalSpec{Attribute: color.FgRed}, + } +) + +func GetCommands() *core.Commands { + cmds := GetGeneratedCommands() + + human.RegisterMarshalerFunc(serverless_sqldb.DatabaseStatus(""), human.EnumMarshalFunc(sdbSQLDatabaseStatusMarshalSpecs)) + human.RegisterMarshalerFunc(serverless_sqldb.DatabaseBackupStatus(""), human.EnumMarshalFunc(sdbSQLDatabaseBackupStatusMarshalSpecs)) + + return cmds +}