ironicclient.common.base module

Base utilities to build API operation managers and objects on top of.

class ironicclient.common.base.CreateManager(api)[source]

Bases: Manager

Provides creation operations with a particular API.

create(os_ironic_api_version=None, global_request_id=None, **kwargs)[source]

Create a resource based on a kwargs dictionary of attributes.

Parameters:
  • kwargs – A dictionary containing the attributes of the resource that will be created.

  • os_ironic_api_version – String version (e.g. “1.35”) to use for the request. If not specified, the client’s default is used.

  • global_request_id – String containing global request ID header value (in form “req-<UUID>”) to use for the request.

Raises:

exc.InvalidAttribute – For invalid attributes that are not needed to create the resource.

class ironicclient.common.base.Manager(api)[source]

Bases: object

Provides CRUD operations with a particular API.

abstract property resource_class

The resource class

class ironicclient.common.base.Resource(manager, info, loaded=False)[source]

Bases: Resource

Represents a particular instance of an object (tenant, user, etc).

This is pretty much just a bag for attributes.

to_dict()[source]
ironicclient.common.base.getid(obj)[source]

Wrapper to get object’s ID.

Abstracts the common pattern of allowing both an object or an object’s ID (UUID) as a parameter when dealing with relationships.