@@ -10,14 +10,15 @@ import (
1010 "github.com/stackitcloud/stackit-cli/internal/pkg/examples"
1111 "github.com/stackitcloud/stackit-cli/internal/pkg/globalflags"
1212 "github.com/stackitcloud/stackit-cli/internal/pkg/print"
13+ "github.com/stackitcloud/stackit-cli/internal/pkg/projectname"
1314 "github.com/stackitcloud/stackit-cli/internal/pkg/services/iaas/client"
1415 "github.com/stackitcloud/stackit-cli/internal/pkg/utils"
1516 "github.com/stackitcloud/stackit-sdk-go/services/iaas"
1617)
1718
1819type inputModel struct {
1920 * globalflags.GlobalFlagModel
20- Id string
21+ SecurityGroupId string
2122}
2223
2324const groupIdArg = "GROUP_ID"
@@ -44,8 +45,18 @@ func NewCmd(p *print.Printer) *cobra.Command {
4445 return err
4546 }
4647
48+ projectLabel , err := projectname .GetProjectName (ctx , p , cmd )
49+ if err != nil {
50+ return fmt .Errorf ("get project name: %w" , err )
51+ }
52+
53+ securityGroupResp , err := apiClient .GetSecurityGroup (ctx , model .ProjectId , model .SecurityGroupId ).Execute ()
54+ if err != nil {
55+ return fmt .Errorf ("get security group %q: %w" , model .SecurityGroupId , err )
56+ }
57+
4758 if ! model .AssumeYes {
48- prompt := fmt .Sprintf ("Are you sure you want to delete the security group %q?" , model . Id )
59+ prompt := fmt .Sprintf ("Are you sure you want to delete the security group %q for %q ?" , * securityGroupResp . Name , projectLabel )
4960 err = p .PromptForConfirmation (prompt )
5061 if err != nil {
5162 return err
@@ -58,7 +69,7 @@ func NewCmd(p *print.Printer) *cobra.Command {
5869 if err := request .Execute (); err != nil {
5970 return fmt .Errorf ("delete security group: %w" , err )
6071 }
61- p .Info ("Deleted security group %q for %q\n " , model . Id , model . ProjectId )
72+ p .Info ("Deleted security group %q for %q\n " , * securityGroupResp . Name , projectLabel )
6273
6374 return nil
6475 },
@@ -75,7 +86,7 @@ func parseInput(p *print.Printer, cmd *cobra.Command, cliArgs []string) (*inputM
7586
7687 model := inputModel {
7788 GlobalFlagModel : globalFlags ,
78- Id : cliArgs [0 ],
89+ SecurityGroupId : cliArgs [0 ],
7990 }
8091
8192 if p .IsVerbosityDebug () {
@@ -91,6 +102,6 @@ func parseInput(p *print.Printer, cmd *cobra.Command, cliArgs []string) (*inputM
91102}
92103
93104func buildRequest (ctx context.Context , model * inputModel , apiClient * iaas.APIClient ) iaas.ApiDeleteSecurityGroupRequest {
94- request := apiClient .DeleteSecurityGroup (ctx , model .ProjectId , model .Id )
105+ request := apiClient .DeleteSecurityGroup (ctx , model .ProjectId , model .SecurityGroupId )
95106 return request
96107}
0 commit comments