Skip to content

Commit e7601bb

Browse files
author
Juan Jesús Padrón Hernández
committed
fix(sca): add missing update and create prompts
1 parent 3e2fce5 commit e7601bb

2 files changed

Lines changed: 34 additions & 6 deletions

File tree

‎internal/cmd/alpha/sca/application/create/create.go‎

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -119,9 +119,16 @@ func NewCmd(params *types.CmdParams) *cobra.Command {
119119
return err
120120
}
121121

122-
globalFlags := globalflags.Parse(params.Printer, cmd)
123-
if globalFlags.ProjectId == "" {
124-
return &errors.ProjectIdError{}
122+
environmentLabel, err := utils.GetEnvironmentName(ctx, apiClient.DefaultAPI, model.ProjectId, model.EnvironmentID)
123+
if err != nil {
124+
params.Printer.Debug(print.ErrorLevel, "get environment name: %v", err)
125+
environmentLabel = model.EnvironmentID
126+
}
127+
128+
prompt := fmt.Sprintf("Are you sure you want to create application %q on environment %q?", model.Name, environmentLabel)
129+
err = params.Printer.PromptForConfirmation(prompt)
130+
if err != nil {
131+
return err
125132
}
126133

127134
// Call API

‎internal/cmd/alpha/sca/application/update/update.go‎

Lines changed: 24 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,9 @@ import (
1515
"github.com/stackitcloud/stackit-cli/internal/pkg/flags"
1616
"github.com/stackitcloud/stackit-cli/internal/pkg/globalflags"
1717
"github.com/stackitcloud/stackit-cli/internal/pkg/print"
18+
"github.com/stackitcloud/stackit-cli/internal/pkg/projectname"
1819
"github.com/stackitcloud/stackit-cli/internal/pkg/services/sca/client"
20+
"github.com/stackitcloud/stackit-cli/internal/pkg/services/sca/utils"
1921
scautils "github.com/stackitcloud/stackit-cli/internal/pkg/services/sca/utils"
2022
"github.com/stackitcloud/stackit-cli/internal/pkg/spinner"
2123
"github.com/stackitcloud/stackit-cli/internal/pkg/types"
@@ -127,9 +129,28 @@ func NewCmd(params *types.CmdParams) *cobra.Command {
127129
return err
128130
}
129131

130-
globalFlags := globalflags.Parse(params.Printer, cmd)
131-
if globalFlags.ProjectId == "" {
132-
return &errors.ProjectIdError{}
132+
applicationLabel, err := utils.GetApplicationName(ctx, apiClient.DefaultAPI, model.ProjectId, model.EnvironmentID, model.ApplicationID)
133+
if err != nil {
134+
params.Printer.Debug(print.ErrorLevel, "get application name: %v", err)
135+
applicationLabel = model.ApplicationID
136+
}
137+
138+
environmentLabel, err := utils.GetEnvironmentName(ctx, apiClient.DefaultAPI, model.ProjectId, model.EnvironmentID)
139+
if err != nil {
140+
params.Printer.Debug(print.ErrorLevel, "get environment name: %v", err)
141+
environmentLabel = model.EnvironmentID
142+
}
143+
144+
projectLabel, err := projectname.GetProjectName(ctx, params.Printer, params.CliVersion, cmd)
145+
if err != nil {
146+
params.Printer.Debug(print.ErrorLevel, "get project name: %v", err)
147+
projectLabel = model.ProjectId
148+
}
149+
150+
prompt := fmt.Sprintf("Are you sure you want to update the application %q from environment %q and product %q?", applicationLabel, environmentLabel, projectLabel)
151+
err = params.Printer.PromptForConfirmation(prompt)
152+
if err != nil {
153+
return err
133154
}
134155

135156
current, err := apiClient.DefaultAPI.GetApplication(ctx, model.ProjectId, model.EnvironmentID, model.ApplicationID).Execute()

0 commit comments

Comments
 (0)