Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 0 additions & 5 deletions docs/stackit_logme_instance_create.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,6 @@ stackit logme instance create [flags]
### Examples

```
Create a LogMe instance with name "my-instance" and specify plan by name and version
$ stackit logme instance create --name my-instance --plan-name stackit-logme2-1.2.50-replica --version 2

Create a LogMe instance with name "my-instance" and specify plan by ID
$ stackit logme instance create --name my-instance --plan-id xxx

Expand All @@ -35,9 +32,7 @@ stackit logme instance create [flags]
--monitoring-instance-id string Monitoring instance ID
-n, --name string Instance name
--plan-id string Plan ID
--plan-name string Plan name
--syslog strings Syslog
--version string Instance LogMe version
```

### Options inherited from parent commands
Expand Down
2 changes: 0 additions & 2 deletions docs/stackit_logme_instance_update.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,9 +32,7 @@ stackit logme instance update INSTANCE_ID [flags]
--monitoring-instance-id string Monitoring instance ID
-n, --name string Instance name
--plan-id string Plan ID
--plan-name string Plan name
--syslog strings Syslog
--version string Instance LogMe version
```

### Options inherited from parent commands
Expand Down
5 changes: 0 additions & 5 deletions docs/stackit_mariadb_instance_create.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,6 @@ stackit mariadb instance create [flags]
### Examples

```
Create a MariaDB instance with name "my-instance" and specify plan by name and version
$ stackit mariadb instance create --name my-instance --plan-name stackit-mariadb-1.2.10-replica --version 10.6

Create a MariaDB instance with name "my-instance" and specify plan by ID
$ stackit mariadb instance create --name my-instance --plan-id xxx

Expand All @@ -35,9 +32,7 @@ stackit mariadb instance create [flags]
--monitoring-instance-id string Monitoring instance ID
-n, --name string Instance name
--plan-id string Plan ID
--plan-name string Plan name
--syslog strings Syslog
--version string Instance MariaDB version
```

### Options inherited from parent commands
Expand Down
2 changes: 0 additions & 2 deletions docs/stackit_mariadb_instance_update.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,9 +31,7 @@ stackit mariadb instance update INSTANCE_ID [flags]
--metrics-prefix string Metrics prefix
--monitoring-instance-id string Monitoring instance ID
--plan-id string Plan ID
--plan-name string Plan name
--syslog strings Syslog
--version string Instance MariaDB version
```

### Options inherited from parent commands
Expand Down
5 changes: 0 additions & 5 deletions docs/stackit_opensearch_instance_create.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,6 @@ stackit opensearch instance create [flags]
### Examples

```
Create an OpenSearch instance with name "my-instance" and specify plan by name and version
$ stackit opensearch instance create --name my-instance --plan-name stackit-opensearch-1.2.10-replica --version 2

Create an OpenSearch instance with name "my-instance" and specify plan by ID
$ stackit opensearch instance create --name my-instance --plan-id xxx

Expand All @@ -35,10 +32,8 @@ stackit opensearch instance create [flags]
--monitoring-instance-id string Monitoring instance ID
-n, --name string Instance name
--plan-id string Plan ID
--plan-name string Plan name
--plugin strings Plugins (multiple of: [repository-s3, repository-azure, analysis-phonetic]) (default [])
--syslog strings Syslog
--version string Instance OpenSearch version
```

### Options inherited from parent commands
Expand Down
2 changes: 0 additions & 2 deletions docs/stackit_opensearch_instance_update.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,10 +31,8 @@ stackit opensearch instance update INSTANCE_ID [flags]
--metrics-prefix string Metrics prefix
--monitoring-instance-id string Monitoring instance ID
--plan-id string Plan ID
--plan-name string Plan name
--plugin strings Plugins (multiple of: [repository-s3, repository-azure, analysis-phonetic]) (default [])
--syslog strings Syslog
--version string Instance OpenSearch version
```

### Options inherited from parent commands
Expand Down
5 changes: 0 additions & 5 deletions docs/stackit_rabbitmq_instance_create.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,6 @@ stackit rabbitmq instance create [flags]
### Examples

```
Create a RabbitMQ instance with name "my-instance" and specify plan by name and version
$ stackit rabbitmq instance create --name my-instance --plan-name stackit-rabbitmq-1.2.10-replica --version 3.10

Create a RabbitMQ instance with name "my-instance" and specify plan by ID
$ stackit rabbitmq instance create --name my-instance --plan-id xxx

Expand All @@ -35,10 +32,8 @@ stackit rabbitmq instance create [flags]
--monitoring-instance-id string Monitoring instance ID
-n, --name string Instance name
--plan-id string Plan ID
--plan-name string Plan name
--plugin strings Plugins (multiple of: [rabbitmq_consistent_hash_exchange, rabbitmq_federation, rabbitmq_federation_management, rabbitmq_mqtt, rabbitmq_sharding, rabbitmq_shovel, rabbitmq_shovel_management, rabbitmq_stomp, rabbitmq_tracing, rabbitmq_event_exchange]) (default [])
--syslog strings Syslog
--version string Instance RabbitMQ version
```

### Options inherited from parent commands
Expand Down
2 changes: 0 additions & 2 deletions docs/stackit_rabbitmq_instance_update.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,10 +31,8 @@ stackit rabbitmq instance update INSTANCE_ID [flags]
--metrics-prefix string Metrics prefix
--monitoring-instance-id string Monitoring instance ID
--plan-id string Plan ID
--plan-name string Plan name
--plugin strings Plugins (multiple of: [rabbitmq_consistent_hash_exchange, rabbitmq_federation, rabbitmq_federation_management, rabbitmq_mqtt, rabbitmq_sharding, rabbitmq_shovel, rabbitmq_shovel_management, rabbitmq_stomp, rabbitmq_tracing, rabbitmq_event_exchange]) (default [])
--syslog strings Syslog
--version string Instance RabbitMQ version
```

### Options inherited from parent commands
Expand Down
5 changes: 0 additions & 5 deletions docs/stackit_redis_instance_create.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,6 @@ stackit redis instance create [flags]
### Examples

```
Create a Redis instance with name "my-instance" and specify plan by name and version
$ stackit redis instance create --name my-instance --plan-name stackit-redis-1.2.10-replica --version 6

Create a Redis instance with name "my-instance" and specify plan by ID
$ stackit redis instance create --name my-instance --plan-id xxx

Expand All @@ -35,9 +32,7 @@ stackit redis instance create [flags]
--monitoring-instance-id string Monitoring instance ID
-n, --name string Instance name
--plan-id string Plan ID
--plan-name string Plan name
--syslog strings Syslog
--version string Instance Redis version
```

### Options inherited from parent commands
Expand Down
2 changes: 0 additions & 2 deletions docs/stackit_redis_instance_update.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,9 +31,7 @@ stackit redis instance update INSTANCE_ID [flags]
--metrics-prefix string Metrics prefix
--monitoring-instance-id string Monitoring instance ID
--plan-id string Plan ID
--plan-name string Plan name
--syslog strings Syslog
--version string Instance Redis version
```

### Options inherited from parent commands
Expand Down
29 changes: 13 additions & 16 deletions internal/cmd/logme/instance/create/create.go
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,8 @@ const (
sgwAclFlag = "acl"
syslogFlag = "syslog"
planIdFlag = "plan-id"
planNameFlag = "plan-name"
versionFlag = "version"
planNameFlag = "plan-name" // Deprecated: Will be removed after 2027-02-28. Use --plan-id instead.
versionFlag = "version" // Deprecated: Will be removed after 2027-02-28. Use --plan-id instead.
)

type inputModel struct {
Expand All @@ -62,9 +62,6 @@ func NewCmd(params *types.CmdParams) *cobra.Command {
Long: "Creates a LogMe instance.",
Args: args.NoArgs,
Example: examples.Build(
examples.NewExample(
`Create a LogMe instance with name "my-instance" and specify plan by name and version`,
"$ stackit logme instance create --name my-instance --plan-name stackit-logme2-1.2.50-replica --version 2"),
examples.NewExample(
`Create a LogMe instance with name "my-instance" and specify plan by ID`,
"$ stackit logme instance create --name my-instance --plan-id xxx"),
Expand Down Expand Up @@ -145,6 +142,11 @@ func configureFlags(cmd *cobra.Command) {

err := flags.MarkFlagsRequired(cmd, instanceNameFlag)
cobra.CheckErr(err)

err = cmd.Flags().MarkDeprecated(planNameFlag, "Will be removed after 2027-02-28. Use the --plan-id flag instead.")
cobra.CheckErr(err)
err = cmd.Flags().MarkDeprecated(versionFlag, "Will be removed after 2027-02-28. Use the --plan-id flag instead.")
cobra.CheckErr(err)
}

func parseInput(p *print.Printer, cmd *cobra.Command, _ []string) (*inputModel, error) {
Expand Down Expand Up @@ -191,15 +193,14 @@ func buildRequest(ctx context.Context, model *inputModel, apiClient logme.Defaul
req := apiClient.CreateInstance(ctx, model.ProjectId, model.Region)

var planId *string
var err error

offerings, err := apiClient.ListOfferings(ctx, model.ProjectId, model.Region).Execute()
if err != nil {
return req, fmt.Errorf("get LogMe offerings: %w", err)
}

if model.PlanId == nil {
planId, err = logmeUtils.LoadPlanId(model.PlanName, model.Version, offerings)
// Deprecated: resolving a plan by --plan-name/--version will be removed after 2027-02-28. Use --plan-id instead.
offerings, err := apiClient.ListOfferings(ctx, model.ProjectId, model.Region).Execute()
if err != nil {
return req, fmt.Errorf("get LogMe offerings: %w", err)
}
planId, err = logmeUtils.LoadPlanId(model.PlanName, model.Version, offerings) //nolint:staticcheck // deprecated but still supported until 2027-02-28
if err != nil {
var dsaInvalidPlanError *cliErr.DSAInvalidPlanError
if !errors.As(err, &dsaInvalidPlanError) {
Expand All @@ -208,10 +209,6 @@ func buildRequest(ctx context.Context, model *inputModel, apiClient logme.Defaul
return req, err
}
} else {
err := logmeUtils.ValidatePlanId(*model.PlanId, offerings)
if err != nil {
return req, err
}
planId = model.PlanId
}

Expand Down
28 changes: 13 additions & 15 deletions internal/cmd/logme/instance/update/update.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,8 @@ const (
sgwAclFlag = "acl"
syslogFlag = "syslog"
planIdFlag = "plan-id"
planNameFlag = "plan-name"
versionFlag = "version"
planNameFlag = "plan-name" // Deprecated: Will be removed after 2027-02-28. Use --plan-id instead.
versionFlag = "version" // Deprecated: Will be removed after 2027-02-28. Use --plan-id instead.
)

type inputModel struct {
Expand Down Expand Up @@ -146,6 +146,11 @@ func configureFlags(cmd *cobra.Command) {
cmd.Flags().String(planNameFlag, "", "Plan name")
cmd.Flags().String(versionFlag, "", "Instance LogMe version")
cmd.Flags().StringP(instanceNameFlag, "n", "", "Instance name")

err := cmd.Flags().MarkDeprecated(planNameFlag, "Will be removed after 2027-02-28. Use the --plan-id flag instead.")
cobra.CheckErr(err)
err = cmd.Flags().MarkDeprecated(versionFlag, "Will be removed after 2027-02-28. Use the --plan-id flag instead.")
cobra.CheckErr(err)
}

func parseInput(p *print.Printer, cmd *cobra.Command, inputArgs []string) (*inputModel, error) {
Expand Down Expand Up @@ -206,15 +211,14 @@ func buildRequest(ctx context.Context, model *inputModel, apiClient logme.Defaul
req := apiClient.PartialUpdateInstance(ctx, model.ProjectId, model.Region, model.InstanceId)

var planId *string
var err error

offerings, err := apiClient.ListOfferings(ctx, model.ProjectId, model.Region).Execute()
if err != nil {
return req, fmt.Errorf("get LogMe offerings: %w", err)
}

if model.PlanId == nil && model.PlanName != "" && model.Version != "" {
planId, err = logmeUtils.LoadPlanId(model.PlanName, model.Version, offerings)
// Deprecated: resolving a plan by --plan-name/--version will be removed after 2027-02-28. Use --plan-id instead.
offerings, err := apiClient.ListOfferings(ctx, model.ProjectId, model.Region).Execute()
if err != nil {
return req, fmt.Errorf("get LogMe offerings: %w", err)
}
planId, err = logmeUtils.LoadPlanId(model.PlanName, model.Version, offerings) //nolint:staticcheck // deprecated but still supported until 2027-02-28
if err != nil {
var dsaInvalidPlanError *cliErr.DSAInvalidPlanError
if !errors.As(err, &dsaInvalidPlanError) {
Expand All @@ -224,12 +228,6 @@ func buildRequest(ctx context.Context, model *inputModel, apiClient logme.Defaul
}
} else {
// planId is not required for update operation
if model.PlanId != nil {
err := logmeUtils.ValidatePlanId(*model.PlanId, offerings)
if err != nil {
return req, err
}
}
planId = model.PlanId
}

Expand Down
29 changes: 13 additions & 16 deletions internal/cmd/mariadb/instance/create/create.go
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,8 @@ const (
sgwAclFlag = "acl"
syslogFlag = "syslog"
planIdFlag = "plan-id"
planNameFlag = "plan-name"
versionFlag = "version"
planNameFlag = "plan-name" // Deprecated: Will be removed after 2027-02-28. Use --plan-id instead.
versionFlag = "version" // Deprecated: Will be removed after 2027-02-28. Use --plan-id instead.
)

type inputModel struct {
Expand All @@ -62,9 +62,6 @@ func NewCmd(params *types.CmdParams) *cobra.Command {
Long: "Creates a MariaDB instance.",
Args: args.NoArgs,
Example: examples.Build(
examples.NewExample(
`Create a MariaDB instance with name "my-instance" and specify plan by name and version`,
"$ stackit mariadb instance create --name my-instance --plan-name stackit-mariadb-1.2.10-replica --version 10.6"),
examples.NewExample(
`Create a MariaDB instance with name "my-instance" and specify plan by ID`,
"$ stackit mariadb instance create --name my-instance --plan-id xxx"),
Expand Down Expand Up @@ -144,6 +141,11 @@ func configureFlags(cmd *cobra.Command) {

err := flags.MarkFlagsRequired(cmd, instanceNameFlag)
cobra.CheckErr(err)

err = cmd.Flags().MarkDeprecated(planNameFlag, "Will be removed after 2027-02-28. Use the --plan-id flag instead.")
cobra.CheckErr(err)
err = cmd.Flags().MarkDeprecated(versionFlag, "Will be removed after 2027-02-28. Use the --plan-id flag instead.")
cobra.CheckErr(err)
}

func parseInput(p *print.Printer, cmd *cobra.Command, _ []string) (*inputModel, error) {
Expand Down Expand Up @@ -190,15 +192,14 @@ func buildRequest(ctx context.Context, model *inputModel, apiClient mariadb.Defa
req := apiClient.CreateInstance(ctx, model.ProjectId, model.Region)

var planId *string
var err error

offerings, err := apiClient.ListOfferings(ctx, model.ProjectId, model.Region).Execute()
if err != nil {
return req, fmt.Errorf("get MariaDB offerings: %w", err)
}

if model.PlanId == nil {
planId, err = mariadbUtils.LoadPlanId(model.PlanName, model.Version, offerings)
// Deprecated: resolving a plan by --plan-name/--version will be removed after 2027-02-28. Use --plan-id instead.
offerings, err := apiClient.ListOfferings(ctx, model.ProjectId, model.Region).Execute()
if err != nil {
return req, fmt.Errorf("get MariaDB offerings: %w", err)
}
planId, err = mariadbUtils.LoadPlanId(model.PlanName, model.Version, offerings) //nolint:staticcheck // deprecated but still supported until 2027-02-28
if err != nil {
var dsaInvalidPlanError *cliErr.DSAInvalidPlanError
if !errors.As(err, &dsaInvalidPlanError) {
Expand All @@ -207,10 +208,6 @@ func buildRequest(ctx context.Context, model *inputModel, apiClient mariadb.Defa
return req, err
}
} else {
err := mariadbUtils.ValidatePlanId(*model.PlanId, offerings)
if err != nil {
return req, err
}
planId = model.PlanId
}
var sgwAcl *string
Expand Down
Loading