77 "github.com/stackitcloud/stackit-cli/internal/pkg/types"
88
99 "github.com/spf13/cobra"
10- "github.com/stackitcloud/stackit-sdk-go/services/mongodbflex"
10+ mongodbflex "github.com/stackitcloud/stackit-sdk-go/services/mongodbflex/v2api "
1111
1212 "github.com/stackitcloud/stackit-cli/internal/pkg/args"
1313 "github.com/stackitcloud/stackit-cli/internal/pkg/errors"
@@ -61,7 +61,7 @@ func NewCmd(params *types.CmdParams) *cobra.Command {
6161 return err
6262 }
6363
64- instanceLabel , err := mongoUtils .GetInstanceName (ctx , apiClient , model .ProjectId , model .InstanceId , model .Region )
64+ instanceLabel , err := mongoUtils .GetInstanceName (ctx , apiClient . DefaultAPI , model .ProjectId , model .InstanceId , model .Region )
6565 if err != nil {
6666 params .Printer .Debug (print .ErrorLevel , "get instance name: %v" , err )
6767 instanceLabel = model .InstanceId
@@ -75,13 +75,13 @@ func NewCmd(params *types.CmdParams) *cobra.Command {
7575 return fmt .Errorf ("describe backup for MongoDB Flex instance: %w" , err )
7676 }
7777
78- restoreJobs , err := apiClient .ListRestoreJobs (ctx , model .ProjectId , model .InstanceId , model .Region ).Execute ()
78+ restoreJobs , err := apiClient .DefaultAPI . ListRestoreJobs (ctx , model .ProjectId , model .InstanceId , model .Region ).Execute ()
7979 if err != nil {
8080 return fmt .Errorf ("get restore jobs for MongoDB Flex instance %q: %w" , instanceLabel , err )
8181 }
8282
8383 restoreJobState := mongoUtils .GetRestoreStatus (model .BackupId , restoreJobs )
84- return outputResult (params .Printer , model .OutputFormat , restoreJobState , * resp .Item )
84+ return outputResult (params .Printer , model .OutputFormat , restoreJobState , resp .Item )
8585 },
8686 }
8787 configureFlags (cmd )
@@ -114,11 +114,15 @@ func parseInput(p *print.Printer, cmd *cobra.Command, inputArgs []string) (*inpu
114114}
115115
116116func buildRequest (ctx context.Context , model * inputModel , apiClient * mongodbflex.APIClient ) mongodbflex.ApiGetBackupRequest {
117- req := apiClient .GetBackup (ctx , model .ProjectId , model .InstanceId , model .BackupId , model .Region )
117+ req := apiClient .DefaultAPI . GetBackup (ctx , model .ProjectId , model .InstanceId , model .BackupId , model .Region )
118118 return req
119119}
120120
121- func outputResult (p * print.Printer , outputFormat , restoreStatus string , backup mongodbflex.Backup ) error {
121+ func outputResult (p * print.Printer , outputFormat , restoreStatus string , backup * mongodbflex.Backup ) error {
122+ // allows passing empty backups but avoids having to pass large backup by value
123+ if backup == nil {
124+ backup = & mongodbflex.Backup {}
125+ }
122126 return p .OutputResult (outputFormat , backup , func () error {
123127 table := tables .NewTable ()
124128 table .AddRow ("ID" , utils .PtrString (backup .Id ))
0 commit comments