The ironic.objects.portgroup Module

class ironic.objects.portgroup.Portgroup(context=None, **kwargs)[source]

Bases: ironic.objects.base.IronicObject, oslo_versionedobjects.base.VersionedObjectDictCompat

create(context=None)[source]

Create a Portgroup record in the DB.

Parameters:context – Security context. NOTE: This should only be used internally by the indirection_api. Unfortunately, RPC requires context as the first argument, even though we don’t use it. A context should be set when instantiating the object, e.g.: Portgroup(context)
Raises:DuplicateName, MACAlreadyExists, PortgroupAlreadyExists
destroy(context=None)[source]

Delete the Portgroup from the DB.

Parameters:context – Security context. NOTE: This should only be used internally by the indirection_api. Unfortunately, RPC requires context as the first argument, even though we don’t use it. A context should be set when instantiating the object, e.g.: Portgroup(context)
Raises:PortgroupNotEmpty, PortgroupNotFound
classmethod get(context, portgroup_ident)[source]

Find a portgroup based on its id, uuid, name or address.

Parameters:
  • portgroup_ident – The id, uuid, name or address of a portgroup.
  • context – Security context
Returns:

A Portgroup object.

Raises:

InvalidIdentity

classmethod get_by_address(context, address)[source]

Find a portgroup based on address and return a Portgroup object.

Parameters:
  • cls – the Portgroup
  • context – Security context
  • address – The MAC address of a portgroup.
Returns:

A Portgroup object.

Raises:

PortgroupNotFound

classmethod get_by_id(context, portgroup_id)[source]

Find a portgroup based on its integer ID and return a Portgroup object.

Parameters:
  • cls – the Portgroup
  • context – Security context
  • portgroup_id – The ID of a portgroup.
Returns:

A Portgroup object.

Raises:

PortgroupNotFound

classmethod get_by_name(context, name)[source]

Find a portgroup based on name and return a Portgroup object.

Parameters:
  • cls – the Portgroup
  • context – Security context
  • name – The name of a portgroup.
Returns:

A Portgroup object.

Raises:

PortgroupNotFound

classmethod get_by_uuid(context, uuid)[source]

Find a portgroup based on UUID and return a Portgroup object.

Parameters:
  • cls – the Portgroup
  • context – Security context
  • uuid – The UUID of a portgroup.
Returns:

A Portgroup object.

Raises:

PortgroupNotFound

classmethod list(context, limit=None, marker=None, sort_key=None, sort_dir=None)[source]

Return a list of Portgroup objects.

Parameters:
  • cls – the Portgroup
  • context – Security context.
  • limit – Maximum number of resources to return in a single result.
  • marker – Pagination marker for large data sets.
  • sort_key – Column to sort results by.
  • sort_dir – Direction to sort. “asc” or “desc”.
Returns:

A list of Portgroup object.

Raises:

InvalidParameterValue

classmethod list_by_node_id(context, node_id, limit=None, marker=None, sort_key=None, sort_dir=None)[source]

Return a list of Portgroup objects associated with a given node ID.

Parameters:
  • cls – the Portgroup
  • context – Security context.
  • node_id – The ID of the node.
  • limit – Maximum number of resources to return in a single result.
  • marker – Pagination marker for large data sets.
  • sort_key – Column to sort results by.
  • sort_dir – Direction to sort. “asc” or “desc”.
Returns:

A list of Portgroup object.

Raises:

InvalidParameterValue

refresh(context=None)[source]

Loads updates for this Portgroup.

Loads a portgroup with the same uuid from the database and checks for updated attributes. Updates are applied from the loaded portgroup column by column, if there are any updates.

Parameters:context – Security context. NOTE: This should only be used internally by the indirection_api. Unfortunately, RPC requires context as the first argument, even though we don’t use it. A context should be set when instantiating the object, e.g.: Portgroup(context)
Raises:PortgroupNotFound
save(context=None)[source]

Save updates to this Portgroup.

Updates will be made column by column based on the result of self.what_changed().

Parameters:context – Security context. NOTE: This should only be used internally by the indirection_api. Unfortunately, RPC requires context as the first argument, even though we don’t use it. A context should be set when instantiating the object, e.g.: Portgroup(context)
Raises:PortgroupNotFound, DuplicateName, MACAlreadyExists
class ironic.objects.portgroup.PortgroupCRUDNotification(context=None, **kwargs)[source]

Bases: ironic.objects.notification.NotificationBase

Notification when ironic creates, updates or deletes a portgroup.

class ironic.objects.portgroup.PortgroupCRUDPayload(portgroup, node_uuid)[source]

Bases: ironic.objects.notification.NotificationPayloadBase