github.com/chnsz/golangsdk@v0.0.0-20240506093406-85a3fbfa605b/openstack/dns/v2/ipaddress/requests.go (about) 1 package ipaddress 2 3 import "github.com/chnsz/golangsdk" 4 5 type CreateOpts struct { 6 IPAddress `json:"ipaddress" required:"true"` 7 } 8 9 type IPAddress struct { 10 SubnetID string `json:"subnet_id" required:"true"` 11 IP string `json:"ip,omitempty"` 12 } 13 14 func Create(c *golangsdk.ServiceClient, opts CreateOpts, endpointID string) (r CreateResult) { 15 body, err := golangsdk.BuildRequestBody(opts, "") 16 if err != nil { 17 r.Err = err 18 return 19 } 20 _, r.Err = c.Post(baseUrl(c, endpointID), body, &r.Body, nil) 21 return 22 } 23 24 func Delete(c *golangsdk.ServiceClient, endpointID string, ipaddressID string) (r DeleteResult) { 25 _, r.Err = c.Delete(resourceUrl(c, endpointID, ipaddressID), nil) 26 return 27 } 28 29 func List(c *golangsdk.ServiceClient, endpointID string) (r ListResult) { 30 _, r.Err = c.Get(baseUrl(c, endpointID), &r.Body, nil) 31 return 32 }