Bare Metal API¶
For details on how to use bare_metal, see Using OpenStack Bare Metal
The BareMetal Class¶
The bare_metal high-level interface is available through the bare_metal
member of a Connection object.
The bare_metal member will only be added if the service is detected.
-
class
openstack.bare_metal.v1._proxy.Proxy(session)¶ -
chassis(details=False, **query)¶ Retrieve a generator of chassis.
Parameters: - details – A boolean indicating whether the detailed information for every chassis should be returned.
- query (dict) –
Optional query parameters to be sent to restrict the chassis to be returned. Available parameters include:
fields: A list containing one or more fields to be returned- in the response. This may lead to some performance gain because other fields of the resource are not refreshed.
limit: Requests at most the specified number of items be- returned from the query.
marker: Specifies the ID of the last-seen chassis. Use thelimitparameter to make an initial limited request and use the ID of the last-seen chassis from the response as themarkervalue in a subsequent limited request.
sort_dir: Sorts the response by the requested sort direction.- A valid value is
asc(ascending) ordesc(descending). Default isasc. You can specify multiple pairs of sort key and sort direction query parameters. If you omit the sort direction in a pair, the API uses the natural sorting direction of the server attribute that is provided as thesort_key.
sort_key: Sorts the response by the this attribute value.- Default is
id. You can specify multiple pairs of sort key and sort direction query parameters. If you omit the sort direction in a pair, the API uses the natural sorting direction of the server attribute that is provided as thesort_key.
Returns: A generator of chassis instances.
-
create_chassis(**attrs)¶ Create a new chassis from attributes.
Parameters: attrs (dict) – Keyword arguments that will be used to create a Chassis, it comprised of the properties on theChassisclass.Returns: The results of chassis creation. Return type: Chassis.
-
find_chassis(name_or_id, ignore_missing=True)¶ Find a single chassis.
Parameters: - name_or_id (str) – The name or ID of a chassis.
- ignore_missing (bool) – When set to
False, an exception ofResourceNotFoundwill be raised when the chassis does not exist. When set to True`, None will be returned when attempting to find a nonexistent chassis.
Returns: One
Chassisobject or None.
-
get_chassis(chassis)¶ Get a specific chassis.
Parameters: chassis – The value can be the name or ID of a chassis or a Chassisinstance.Returns: One ChassisRaises: ResourceNotFoundwhen no chassis matching the name or ID could be found.
-
update_chassis(chassis, **attrs)¶ Update a chassis.
Parameters: - chassis – Either the name or the ID of a chassis, or an instance
of
Chassis. - attrs (dict) – The attributes to update on the chassis represented
by the
chassisparameter.
Returns: The updated chassis.
Return type: - chassis – Either the name or the ID of a chassis, or an instance
of
-
delete_chassis(chassis, ignore_missing=True)¶ Delete a chassis.
Parameters: - chassis – The value can be either the name or ID of a chassis or
a
Chassisinstance. - ignore_missing (bool) – When set to
False, an exceptionResourceNotFoundwill be raised when the chassis could not be found. When set toTrue, no exception will be raised when attempting to delete a non-existent chassis.
Returns: The instance of the chassis which was deleted.
Return type: - chassis – The value can be either the name or ID of a chassis or
a
-
drivers()¶ Retrieve a generator of drivers.
Returns: A generator of driver instances.
-
get_driver(driver)¶ Get a specific driver.
Parameters: driver – The value can be the name of a driver or a Driverinstance.Returns: One DriverRaises: ResourceNotFoundwhen no driver matching the name could be found.
-
nodes(details=False, **query)¶ Retrieve a generator of nodes.
Parameters: - details – A boolean indicating whether the detailed information for every node should be returned.
- query (dict) –
Optional query parameters to be sent to restrict the nodes returned. Available parameters include:
associated: Only return those which are, or are not,- associated with an
instance_id.
driver: Only return those with the specifieddriver.fields: A list containing one or more fields to be returned- in the response. This may lead to some performance gain because other fields of the resource are not refreshed.
instance_id: Only return the node with this specific instance- UUID or an empty set if not found.
is_maintenance: Only return those withmaintenanceset toTrueorFalse.
limit: Requests at most the specified number of nodes be- returned from the query.
marker: Specifies the ID of the last-seen node. Use thelimitparameter to make an initial limited request and use the ID of the last-seen node from the response as themarkervalue in a subsequent limited request.
provision_state: Only return those nodes with the specifiedprovision_state.
sort_dir: Sorts the response by the requested sort direction.- A valid value is
asc(ascending) ordesc(descending). Default isasc. You can specify multiple pairs of sort key and sort direction query parameters. If you omit the sort direction in a pair, the API uses the natural sorting direction of the server attribute that is provided as thesort_key.
sort_key: Sorts the response by the this attribute value.- Default is
id. You can specify multiple pairs of sort key and sort direction query parameters. If you omit the sort direction in a pair, the API uses the natural sorting direction of the server attribute that is provided as thesort_key.
Returns: A generator of node instances.
-
create_node(**attrs)¶ Create a new node from attributes.
Parameters: attrs (dict) – Keyword arguments that will be used to create a Node, it comprised of the properties on theNodeclass.Returns: The results of node creation. Return type: Node.
-
find_node(name_or_id, ignore_missing=True)¶ Find a single node.
Parameters: - name_or_id (str) – The name or ID of a node.
- ignore_missing (bool) – When set to
False, an exception ofResourceNotFoundwill be raised when the node does not exist. When set to True`, None will be returned when attempting to find a nonexistent node.
Returns: One
Nodeobject or None.
-
get_node(node)¶ Get a specific node.
Parameters: node – The value can be the name or ID of a chassis or a Nodeinstance.Returns: One NodeRaises: ResourceNotFoundwhen no node matching the name or ID could be found.
-
update_node(node, **attrs)¶ Update a node.
Parameters: - chassis – Either the name or the ID of a node or an instance
of
Node. - attrs (dict) – The attributes to update on the node represented
by the
nodeparameter.
Returns: The updated node.
Return type: - chassis – Either the name or the ID of a node or an instance
of
-
delete_node(node, ignore_missing=True)¶ Delete a node.
Parameters: - node – The value can be either the name or ID of a node or
a
Nodeinstance. - ignore_missing (bool) – When set to
False, an exceptionResourceNotFoundwill be raised when the node could not be found. When set toTrue, no exception will be raised when attempting to delete a non-existent node.
Returns: The instance of the node which was deleted.
Return type: Node.- node – The value can be either the name or ID of a node or
a
-
ports(details=False, **query)¶ Retrieve a generator of ports.
Parameters: - details – A boolean indicating whether the detailed information for every port should be returned.
- query (dict) –
Optional query parameters to be sent to restrict the ports returned. Available parameters include:
address: Only return ports with the specified physical- hardware address, typically a MAC address.
driver: Only return those with the specifieddriver.fields: A list containing one or more fields to be returned- in the response. This may lead to some performance gain because other fields of the resource are not refreshed.
limit: Requests at most the specified number of ports be- returned from the query.
marker: Specifies the ID of the last-seen port. Use thelimitparameter to make an initial limited request and use the ID of the last-seen port from the response as themarkervalue in a subsequent limited request.
node:only return the ones associated with this specific node- (name or UUID), or an empty set if not found.
node_id:only return the ones associated with this specific- node UUID, or an empty set if not found.
portgroup: only return the ports associated with this- specific Portgroup (name or UUID), or an empty set if not found. Added in API microversion 1.24.
sort_dir: Sorts the response by the requested sort direction.- A valid value is
asc(ascending) ordesc(descending). Default isasc. You can specify multiple pairs of sort key and sort direction query parameters. If you omit the sort direction in a pair, the API uses the natural sorting direction of the server attribute that is provided as thesort_key.
sort_key: Sorts the response by the this attribute value.- Default is
id. You can specify multiple pairs of sort key and sort direction query parameters. If you omit the sort direction in a pair, the API uses the natural sorting direction of the server attribute that is provided as thesort_key.
Returns: A generator of port instances.
-
create_port(**attrs)¶ Create a new port from attributes.
Parameters: attrs (dict) – Keyword arguments that will be used to create a Port, it comprises of the properties on thePortclass.Returns: The results of port creation. Return type: Port.
-
find_port(name_or_id, ignore_missing=True)¶ Find a single port.
Parameters: - name_or_id (str) – The name or ID of a port.
- ignore_missing (bool) – When set to
False, an exception ofResourceNotFoundwill be raised when the port does not exist. When set to True`, None will be returned when attempting to find a nonexistent port.
Returns: One
Portobject or None.
-
get_port(port, **query)¶ Get a specific port.
Parameters: - port – The value can be the name or ID of a chassis or a
Portinstance. - query (dict) –
Optional query parameters to be sent to restrict the port properties returned. Available parameters include:
fields: A list containing one or more fields to be returned- in the response. This may lead to some performance gain because other fields of the resource are not refreshed.
Returns: One
PortRaises: ResourceNotFoundwhen no port matching the name or ID could be found.- port – The value can be the name or ID of a chassis or a
-
update_port(port, **attrs)¶ Update a port.
Parameters: - chassis – Either the name or the ID of a port or an instance
of
Port. - attrs (dict) – The attributes to update on the port represented
by the
portparameter.
Returns: The updated port.
Return type: - chassis – Either the name or the ID of a port or an instance
of
-
delete_port(port, ignore_missing=True)¶ Delete a port.
Parameters: - port – The value can be either the name or ID of a port or
a
Portinstance. - ignore_missing (bool) – When set to
False, an exceptionResourceNotFoundwill be raised when the port could not be found. When set toTrue, no exception will be raised when attempting to delete a non-existent port.
Returns: The instance of the port which was deleted.
Return type: Port.- port – The value can be either the name or ID of a port or
a
-
portgroups(details=False, **query)¶ Retrieve a generator of portgroups.
Parameters: - details – A boolean indicating whether the detailed information for every portgroup should be returned.
- query (dict) –
Optional query parameters to be sent to restrict the portgroups returned. Available parameters include:
address: Only return portgroups with the specified physical- hardware address, typically a MAC address.
fields: A list containing one or more fields to be returned- in the response. This may lead to some performance gain because other fields of the resource are not refreshed.
limit: Requests at most the specified number of portgroups- returned from the query.
marker: Specifies the ID of the last-seen portgroup. Use thelimitparameter to make an initial limited request and use the ID of the last-seen portgroup from the response as themarkervalue in a subsequent limited request.
node:only return the ones associated with this specific node- (name or UUID), or an empty set if not found.
sort_dir: Sorts the response by the requested sort direction.- A valid value is
asc(ascending) ordesc(descending). Default isasc. You can specify multiple pairs of sort key and sort direction query parameters. If you omit the sort direction in a pair, the API uses the natural sorting direction of the server attribute that is provided as thesort_key.
sort_key: Sorts the response by the this attribute value.- Default is
id. You can specify multiple pairs of sort key and sort direction query parameters. If you omit the sort direction in a pair, the API uses the natural sorting direction of the server attribute that is provided as thesort_key.
Returns: A generator of portgroup instances.
-
create_portgroup(**attrs)¶ Create a new portgroup from attributes.
Parameters: attrs (dict) – Keyword arguments that will be used to create a PortGroup, it comprises of the properties on thePortGroupclass.Returns: The results of portgroup creation. Return type: PortGroup.
-
find_portgroup(name_or_id, ignore_missing=True)¶ Find a single portgroup.
Parameters: - name_or_id (str) – The name or ID of a portgroup.
- ignore_missing (bool) – When set to
False, an exception ofResourceNotFoundwill be raised when the portgroup does not exist. When set to True`, None will be returned when attempting to find a nonexistent portgroup.
Returns: One
PortGroupobject or None.
-
get_portgroup(portgroup, **query)¶ Get a specific portgroup.
Parameters: - portgroup – The value can be the name or ID of a chassis or a
PortGroupinstance. - query (dict) –
Optional query parameters to be sent to restrict the portgroup properties returned. Available parameters include:
fields: A list containing one or more fields to be returned- in the response. This may lead to some performance gain because other fields of the resource are not refreshed.
Returns: One
PortGroupRaises: ResourceNotFoundwhen no portgroup matching the name or ID could be found.- portgroup – The value can be the name or ID of a chassis or a
-
update_portgroup(portgroup, **attrs)¶ Update a portgroup.
Parameters: - chassis – Either the name or the ID of a portgroup or an instance
of
PortGroup. - attrs (dict) – The attributes to update on the portgroup
represented by the
portgroupparameter.
Returns: The updated portgroup.
Return type: PortGroup- chassis – Either the name or the ID of a portgroup or an instance
of
-
delete_portgroup(portgroup, ignore_missing=True)¶ Delete a portgroup.
Parameters: - portgroup – The value can be either the name or ID of a portgroup
or a
PortGroupinstance. - ignore_missing (bool) – When set to
False, an exceptionResourceNotFoundwill be raised when the portgroup could not be found. When set toTrue, no exception will be raised when attempting to delete a non-existent portgroup.
Returns: The instance of the portgroup which was deleted.
Return type: PortGroup.- portgroup – The value can be either the name or ID of a portgroup
or a
-