MCPcopy
hub / github.com/digitalocean/doctl / buildDatabaseCreateRequestFromArgs

Function buildDatabaseCreateRequestFromArgs

commands/databases.go:268–344  ·  view source on GitHub ↗
(c *CmdConfig)

Source from the content-addressed store, hash-verified

266}
267
268func buildDatabaseCreateRequestFromArgs(c *CmdConfig) (*godo.DatabaseCreateRequest, error) {
269 r := &godo.DatabaseCreateRequest{Name: c.Args[0]}
270
271 region, err := c.Doit.GetString(c.NS, doctl.ArgRegionSlug)
272 if err != nil {
273 return nil, err
274 }
275 r.Region = region
276
277 numNodes, err := c.Doit.GetInt(c.NS, doctl.ArgDatabaseNumNodes)
278 if err != nil {
279 return nil, err
280 }
281 r.NumNodes = numNodes
282
283 size, err := c.Doit.GetString(c.NS, doctl.ArgSizeSlug)
284 if err != nil {
285 return nil, err
286 }
287 r.SizeSlug = size
288
289 engine, err := c.Doit.GetString(c.NS, doctl.ArgDatabaseEngine)
290 if err != nil {
291 return nil, err
292 }
293 r.EngineSlug = engine
294
295 version, err := c.Doit.GetString(c.NS, doctl.ArgVersion)
296 if err != nil {
297 return nil, err
298 }
299 r.Version = version
300
301 privateNetworkUUID, err := c.Doit.GetString(c.NS, doctl.ArgPrivateNetworkUUID)
302 if err != nil {
303 return nil, err
304 }
305 r.PrivateNetworkUUID = privateNetworkUUID
306
307 tags, err := c.Doit.GetStringSlice(c.NS, doctl.ArgTag)
308 if err != nil {
309 return nil, err
310 }
311 r.Tags = tags
312
313 restoreFromCluster, err := c.Doit.GetString(c.NS, doctl.ArgDatabaseRestoreFromClusterName)
314 if err != nil {
315 return nil, err
316 }
317 if restoreFromCluster != "" {
318 backUpRestore := &godo.DatabaseBackupRestore{}
319 backUpRestore.DatabaseName = restoreFromCluster
320 // only set the restore-from-timestamp if restore-from-cluster is set.
321 restoreFromTimestamp, err := c.Doit.GetString(c.NS, doctl.ArgDatabaseRestoreFromTimestamp)
322 if err != nil {
323 return nil, err
324 }
325 if restoreFromTimestamp != "" {

Callers 1

RunDatabaseCreateFunction · 0.85

Calls 4

convertUTCtoISO8601Function · 0.85
GetStringMethod · 0.65
GetIntMethod · 0.65
GetStringSliceMethod · 0.65

Tested by

no test coverage detected