Documentation ¶
Overview ¶
Package extradhcpopts allow to work with extra DHCP functionality of Neutron ports.
Example to Get a Port with Extra DHCP Options
portID := "46d4bfb9-b26e-41f3-bd2e-e6dcc1ccedb2" var s struct { ports.Port extradhcpopts.ExtraDHCPOptsExt } err := ports.Get(networkClient, portID).ExtractInto(&s) if err != nil { panic(err) }
Example to Create a Port with Extra DHCP Options
var s struct { ports.Port extradhcpopts.ExtraDHCPOptsExt } adminStateUp := true portCreateOpts := ports.CreateOpts{ Name: "dhcp-conf-port", AdminStateUp: &adminStateUp, NetworkID: "a87cc70a-3e15-4acf-8205-9b711a3531b7", FixedIPs: []ports.IP{ {SubnetID: "a0304c3a-4f08-4c43-88af-d796509c97d2", IPAddress: "10.0.0.2"}, }, } createOpts := extradhcpopts.CreateOptsExt{ CreateOptsBuilder: portCreateOpts, ExtraDHCPOpts: []extradhcpopts.CreateExtraDHCPOpt{ { OptName: "optionA", OptValue: "valueA", }, }, } err := ports.Create(networkClient, createOpts).ExtractInto(&s) if err != nil { panic(err) }
Example to Update a Port with Extra DHCP Options
var s struct { ports.Port extradhcpopts.ExtraDHCPOptsExt } portUpdateOpts := ports.UpdateOpts{ Name: "updated-dhcp-conf-port", FixedIPs: []ports.IP{ {SubnetID: "a0304c3a-4f08-4c43-88af-d796509c97d2", IPAddress: "10.0.0.3"}, }, } value := "valueB" updateOpts := extradhcpopts.UpdateOptsExt{ UpdateOptsBuilder: portUpdateOpts, ExtraDHCPOpts: []extradhcpopts.UpdateExtraDHCPOpt{ { OptName: "optionB", OptValue: &value, }, }, } portID := "46d4bfb9-b26e-41f3-bd2e-e6dcc1ccedb2" err := ports.Update(networkClient, portID, updateOpts).ExtractInto(&s) if err != nil { panic(err) }
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CreateExtraDHCPOpt ¶
type CreateExtraDHCPOpt struct { // OptName is the name of a DHCP option. OptName string `json:"opt_name" required:"true"` // OptValue is the value of the DHCP option. OptValue string `json:"opt_value" required:"true"` // IPVersion is the IP protocol version of a DHCP option. IPVersion gophercloud.IPVersion `json:"ip_version,omitempty"` }
CreateExtraDHCPOpt represents the options required to create an extra DHCP option on a port.
type CreateOptsExt ¶
type CreateOptsExt struct { // CreateOptsBuilder is the interface options structs have to satisfy in order // to be used in the main Create operation in this package. ports.CreateOptsBuilder // ExtraDHCPOpts field is a set of DHCP options for a single port. ExtraDHCPOpts []CreateExtraDHCPOpt `json:"extra_dhcp_opts,omitempty"` }
CreateOptsExt adds extra DHCP options to the base ports.CreateOpts.
func (CreateOptsExt) ToPortCreateMap ¶
func (opts CreateOptsExt) ToPortCreateMap() (map[string]interface{}, error)
ToPortCreateMap casts a CreateOptsExt struct to a map.
type ExtraDHCPOpt ¶
type ExtraDHCPOpt struct { // OptName is the name of a single DHCP option. OptName string `json:"opt_name"` // OptValue is the value of a single DHCP option. OptValue string `json:"opt_value"` // IPVersion is the IP protocol version of a single DHCP option. // Valid value is 4 or 6. Default is 4. IPVersion int `json:"ip_version"` }
ExtraDHCPOpt represents a single set of extra DHCP options for a single port.
type ExtraDHCPOptsExt ¶
type ExtraDHCPOptsExt struct {
ExtraDHCPOpts []ExtraDHCPOpt `json:"extra_dhcp_opts"`
}
ExtraDHCPOptsExt is a struct that contains different DHCP options for a single port.
type UpdateExtraDHCPOpt ¶
type UpdateExtraDHCPOpt struct { // OptName is the name of a DHCP option. OptName string `json:"opt_name" required:"true"` // OptValue is the value of the DHCP option. OptValue *string `json:"opt_value"` // IPVersion is the IP protocol version of a DHCP option. IPVersion gophercloud.IPVersion `json:"ip_version,omitempty"` }
UpdateExtraDHCPOpt represents the options required to update an extra DHCP option on a port.
type UpdateOptsExt ¶
type UpdateOptsExt struct { // UpdateOptsBuilder is the interface options structs have to satisfy in order // to be used in the main Update operation in this package. ports.UpdateOptsBuilder // ExtraDHCPOpts field is a set of DHCP options for a single port. ExtraDHCPOpts []UpdateExtraDHCPOpt `json:"extra_dhcp_opts,omitempty"` }
UpdateOptsExt adds extra DHCP options to the base ports.UpdateOpts.
func (UpdateOptsExt) ToPortUpdateMap ¶
func (opts UpdateOptsExt) ToPortUpdateMap() (map[string]interface{}, error)
ToPortUpdateMap casts an UpdateOpts struct to a map.