Skip to content

Commit

Permalink
volumes: fix capacity parsing to allow optional values
Browse files Browse the repository at this point in the history
  • Loading branch information
lgfa29 committed Jul 27, 2023
1 parent 7f99636 commit a659fe1
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 12 deletions.
20 changes: 14 additions & 6 deletions nomad/resource_csi_volume.go
Original file line number Diff line number Diff line change
Expand Up @@ -328,14 +328,22 @@ func resourceCSIVolumeCreate(d *schema.ResourceData, meta interface{}) error {
client := providerConfig.client

// Parse capacities from human-friendly string to number.
capacityMin, err := humanize.ParseBytes(d.Get("capacity_min").(string))
if err != nil {
return fmt.Errorf("invalid value 'capacity_min': %v", err)
var capacityMin uint64
if capacityMinStr := d.Get("capacity_min").(string); capacityMinStr != "" {
var err error
capacityMin, err = humanize.ParseBytes(capacityMinStr)
if err != nil {
return fmt.Errorf("invalid value 'capacity_min': %v", err)
}
}

capacityMax, err := humanize.ParseBytes(d.Get("capacity_max").(string))
if err != nil {
return fmt.Errorf("invalid value 'capacity_max': %v", err)
var capacityMax uint64
if capacityMaxStr := d.Get("capacity_max").(string); capacityMaxStr != "" {
var err error
capacityMax, err = humanize.ParseBytes(capacityMaxStr)
if err != nil {
return fmt.Errorf("invalid value 'capacity_max': %v", err)
}
}

// Parse capabilities set.
Expand Down
20 changes: 14 additions & 6 deletions nomad/resource_external_volume.go
Original file line number Diff line number Diff line change
Expand Up @@ -337,14 +337,22 @@ func resourceExternalVolumeCreate(d *schema.ResourceData, meta interface{}) erro
client := providerConfig.client

// Parse capacities from human-friendly string to number.
capacityMin, err := humanize.ParseBytes(d.Get("capacity_min").(string))
if err != nil {
return fmt.Errorf("invalid value 'capacity_min': %v", err)
var capacityMin uint64
if capacityMinStr := d.Get("capacity_min").(string); capacityMinStr != "" {
var err error
capacityMin, err = humanize.ParseBytes(capacityMinStr)
if err != nil {
return fmt.Errorf("invalid value 'capacity_min': %v", err)
}
}

capacityMax, err := humanize.ParseBytes(d.Get("capacity_max").(string))
if err != nil {
return fmt.Errorf("invalid value 'capacity_max': %v", err)
var capacityMax uint64
if capacityMaxStr := d.Get("capacity_max").(string); capacityMaxStr != "" {
var err error
capacityMax, err = humanize.ParseBytes(capacityMaxStr)
if err != nil {
return fmt.Errorf("invalid value 'capacity_max': %v", err)
}
}

// Parse capabilities set.
Expand Down

0 comments on commit a659fe1

Please sign in to comment.