ironic.api.controllers.v1.port module

class ironic.api.controllers.v1.port.PortsController(*args, **kwargs)[source]

Bases: RestController

REST controller for Ports.

advanced_net_fields = ['pxe_enabled', 'local_link_connection']
delete(port_uuid)[source]

Delete a port.

Parameters:

port_uuid – UUID of a port.

Raises:

OperationNotPermitted, HTTPNotFound

detail(node=None, node_uuid=None, address=None, marker=None, limit=None, sort_key='id', sort_dir='asc', portgroup=None, shard=None)[source]

Retrieve a list of ports with detail.

Note that the ‘node_uuid’ interface is deprecated in favour of the ‘node’ interface

Parameters:
  • node – UUID or name of a node, to get only ports for that node.

  • node_uuid – UUID of a node, to get only ports for that node.

  • address – MAC address of a port, to get the port which has this MAC address.

  • portgroup – UUID or name of a portgroup, to get only ports for that portgroup.

  • shard – comma separated list of shards, to only get ports associated with nodes in those shards.

  • marker – pagination marker for large data sets.

  • limit – maximum number of resources to return in a single result. This value cannot be larger than the value of max_limit in the [api] section of the ironic configuration, or only max_limit resources will be returned.

  • sort_key – column to sort results by. Default: id.

  • sort_dir – direction to sort. “asc” or “desc”. Default: asc.

Raises:

NotAcceptable, HTTPNotFound

get_all(node=None, node_uuid=None, address=None, marker=None, limit=None, sort_key='id', sort_dir='asc', fields=None, portgroup=None, detail=None, shard=None)[source]

Retrieve a list of ports.

Note that the ‘node_uuid’ interface is deprecated in favour of the ‘node’ interface

Parameters:
  • node – UUID or name of a node, to get only ports for that node.

  • node_uuid – UUID of a node, to get only ports for that node.

  • address – MAC address of a port, to get the port which has this MAC address.

  • marker – pagination marker for large data sets.

  • limit – maximum number of resources to return in a single result. This value cannot be larger than the value of max_limit in the [api] section of the ironic configuration, or only max_limit resources will be returned.

  • sort_key – column to sort results by. Default: id.

  • sort_dir – direction to sort. “asc” or “desc”. Default: asc.

  • fields – Optional, a list with a specified set of fields of the resource to be returned.

  • portgroup – UUID or name of a portgroup, to get only ports for that portgroup.

  • shard – Optional, a list of shard ids to filter by, only ports associated with nodes in these shards will be returned.

Raises:

NotAcceptable, HTTPNotFound

get_one(port_ident, fields=None)[source]

Retrieve information about the given port.

Parameters:
  • port_ident – UUID or name of a port.

  • fields – Optional, a list with a specified set of fields of the resource to be returned.

Raises:

NotAcceptable, HTTPNotFound

invalid_sort_key_list = ['extra', 'internal_info', 'local_link_connection']
patch(port_ident, patch)[source]

Update an existing port.

Parameters:
  • port_ident – UUID or name of a port.

  • patch – a json PATCH document to apply to this port.

Raises:

NotAcceptable, HTTPNotFound

post(port)[source]

Create a new port.

Parameters:

port – a port within the request body.

Raises:

NotAcceptable, HTTPNotFound, Conflict

ironic.api.controllers.v1.port.hide_fields_in_newer_versions(port)[source]
ironic.api.controllers.v1.port.port_sanitize(port, fields=None)[source]

Removes sensitive and unrequested data.

Will only keep the fields specified in the fields parameter.

Parameters:

fields (list of str) – list of fields to preserve, or None to preserve them all