github.com/opentelekomcloud/gophertelekomcloud@v0.9.3/openstack/evs/v1/volumes/update.go (about) 1 package volumes 2 3 import ( 4 "github.com/opentelekomcloud/gophertelekomcloud" 5 "github.com/opentelekomcloud/gophertelekomcloud/internal/extract" 6 ) 7 8 type UpdateOpts struct { 9 Name string `json:"display_name,omitempty"` 10 Description string `json:"display_description,omitempty"` 11 Metadata map[string]string `json:"metadata,omitempty"` 12 } 13 14 func Update(client *golangsdk.ServiceClient, id string, opts UpdateOpts) (*Volume, error) { 15 b, err := golangsdk.BuildRequestBody(opts, "volume") 16 if err != nil { 17 return nil, err 18 } 19 20 raw, err := client.Put(client.ServiceURL("volumes", id), b, nil, &golangsdk.RequestOpts{ 21 OkCodes: []int{200}, 22 }) 23 if err != nil { 24 return nil, err 25 } 26 27 var res Volume 28 err = extract.IntoStructPtr(raw.Body, &res, "volume") 29 return &res, err 30 }