@@ -47,7 +47,7 @@ type inputModel struct {
4747 InstanceName * string
4848 EnableMonitoring * bool
4949 Graphite * string
50- MetricsFrequency * int64
50+ MetricsFrequency * int32
5151 MetricsPrefix * string
5252 MonitoringInstanceId * string
5353 SgwAcl * []string
@@ -98,7 +98,7 @@ func NewCmd(params *types.CmdParams) *cobra.Command {
9898 }
9999
100100 // Call API
101- req , err := buildRequest (ctx , model , apiClient )
101+ req , err := buildRequest (ctx , model , apiClient . DefaultAPI )
102102 if err != nil {
103103 var dsaInvalidPlanError * cliErr.DSAInvalidPlanError
104104 if ! errors .As (err , & dsaInvalidPlanError ) {
@@ -110,12 +110,11 @@ func NewCmd(params *types.CmdParams) *cobra.Command {
110110 if err != nil {
111111 return fmt .Errorf ("create MariaDB instance: %w" , err )
112112 }
113- instanceId := * resp .InstanceId
114113
115114 // Wait for async operation, if async mode not enabled
116115 if ! model .Async {
117116 err := spinner .Run (params .Printer , "Creating instance" , func () error {
118- _ , err = wait .CreateInstanceWaitHandler (ctx , apiClient , model .ProjectId , instanceId ).WaitWithContext (ctx )
117+ _ , err = wait .CreateInstanceWaitHandler (ctx , apiClient . DefaultAPI , model .ProjectId , resp . InstanceId ).WaitWithContext (ctx )
119118 return err
120119 })
121120 if err != nil {
@@ -134,7 +133,7 @@ func configureFlags(cmd *cobra.Command) {
134133 cmd .Flags ().StringP (instanceNameFlag , "n" , "" , "Instance name" )
135134 cmd .Flags ().Bool (enableMonitoringFlag , false , "Enable monitoring" )
136135 cmd .Flags ().String (graphiteFlag , "" , "Graphite host" )
137- cmd .Flags ().Int64 (metricsFrequencyFlag , 0 , "Metrics frequency" )
136+ cmd .Flags ().Int32 (metricsFrequencyFlag , 0 , "Metrics frequency" )
138137 cmd .Flags ().String (metricsPrefixFlag , "" , "Metrics prefix" )
139138 cmd .Flags ().Var (flags .UUIDFlag (), monitoringInstanceIdFlag , "Monitoring instance ID" )
140139 cmd .Flags ().Var (flags .CIDRSliceFlag (), sgwAclFlag , "List of IP networks in CIDR notation which are allowed to access this instance" )
@@ -174,7 +173,7 @@ func parseInput(p *print.Printer, cmd *cobra.Command, _ []string) (*inputModel,
174173 EnableMonitoring : flags .FlagToBoolPointer (p , cmd , enableMonitoringFlag ),
175174 MonitoringInstanceId : flags .FlagToStringPointer (p , cmd , monitoringInstanceIdFlag ),
176175 Graphite : flags .FlagToStringPointer (p , cmd , graphiteFlag ),
177- MetricsFrequency : flags .FlagToInt64Pointer (p , cmd , metricsFrequencyFlag ),
176+ MetricsFrequency : flags .FlagToInt32Pointer (p , cmd , metricsFrequencyFlag ),
178177 MetricsPrefix : flags .FlagToStringPointer (p , cmd , metricsPrefixFlag ),
179178 SgwAcl : flags .FlagToStringSlicePointer (p , cmd , sgwAclFlag ),
180179 Syslog : flags .FlagToStringSlicePointer (p , cmd , syslogFlag ),
@@ -187,18 +186,13 @@ func parseInput(p *print.Printer, cmd *cobra.Command, _ []string) (*inputModel,
187186 return & model , nil
188187}
189188
190- type mariaDBClient interface {
191- CreateInstance (ctx context.Context , projectId string ) mariadb.ApiCreateInstanceRequest
192- ListOfferingsExecute (ctx context.Context , projectId string ) (* mariadb.ListOfferingsResponse , error )
193- }
194-
195- func buildRequest (ctx context.Context , model * inputModel , apiClient mariaDBClient ) (mariadb.ApiCreateInstanceRequest , error ) {
189+ func buildRequest (ctx context.Context , model * inputModel , apiClient mariadb.DefaultAPI ) (mariadb.ApiCreateInstanceRequest , error ) {
196190 req := apiClient .CreateInstance (ctx , model .ProjectId )
197191
198192 var planId * string
199193 var err error
200194
201- offerings , err := apiClient .ListOfferingsExecute (ctx , model .ProjectId )
195+ offerings , err := apiClient .ListOfferings (ctx , model .ProjectId ). Execute ( )
202196 if err != nil {
203197 return req , fmt .Errorf ("get MariaDB offerings: %w" , err )
204198 }
@@ -219,24 +213,23 @@ func buildRequest(ctx context.Context, model *inputModel, apiClient mariaDBClien
219213 }
220214 planId = model .PlanId
221215 }
222-
223216 var sgwAcl * string
224217 if model .SgwAcl != nil {
225218 sgwAcl = utils .Ptr (strings .Join (* model .SgwAcl , "," ))
226219 }
227220
228221 req = req .CreateInstancePayload (mariadb.CreateInstancePayload {
229- InstanceName : model .InstanceName ,
222+ InstanceName : utils . PtrString ( model .InstanceName ) ,
230223 Parameters : & mariadb.InstanceParameters {
231224 EnableMonitoring : model .EnableMonitoring ,
232225 Graphite : model .Graphite ,
233226 MonitoringInstanceId : model .MonitoringInstanceId ,
234227 MetricsFrequency : model .MetricsFrequency ,
235228 MetricsPrefix : model .MetricsPrefix ,
236229 SgwAcl : sgwAcl ,
237- Syslog : model .Syslog ,
230+ Syslog : utils . GetSliceFromPointer ( model .Syslog ) ,
238231 },
239- PlanId : planId ,
232+ PlanId : utils . PtrString ( planId ) ,
240233 })
241234 return req , nil
242235}
@@ -251,7 +244,7 @@ func outputResult(p *print.Printer, outputFormat string, async bool, projectLabe
251244 if async {
252245 operationState = "Triggered creation of"
253246 }
254- p .Outputf ("%s instance for project %q. Instance ID: %s\n " , operationState , projectLabel , utils . PtrString ( resp .InstanceId ) )
247+ p .Outputf ("%s instance for project %q. Instance ID: %s\n " , operationState , projectLabel , resp .InstanceId )
255248 return nil
256249 })
257250}
0 commit comments