karbor.objects package

Submodules

karbor.objects.base module

karbor common internal object model

karbor.objects.base.DateTimeField(**kwargs)
class karbor.objects.base.DictOfDictOfStringsField(**kwargs)

Bases: oslo_versionedobjects.fields.AutoTypedField

AUTO_TYPE = <oslo_versionedobjects.fields.Dict object>
class karbor.objects.base.KarborComparableObject

Bases: oslo_versionedobjects.base.ComparableVersionedObject

class karbor.objects.base.KarborObject(context=None, **kwargs)

Bases: oslo_versionedobjects.base.VersionedObject

OBJ_PROJECT_NAMESPACE = 'karbor'
OBJ_SERIAL_NAMESPACE = 'karbor_object'
classmethod get_by_id(context, id, *args, **kwargs)
karbor_obj_get_changes()

Returns a dict of changed fields with tz unaware datetimes.

Any timezone aware datetime field will be converted to UTC timezone and returned as timezone unaware datetime.

This will allow us to pass these fields directly to a db update method as they can’t have timezone information.

refresh()
class karbor.objects.base.KarborObjectDictCompat

Bases: oslo_versionedobjects.base.VersionedObjectDictCompat

Mix-in to provide dictionary key access compat.

If an object needs to support attribute access using dictionary items instead of object attributes, inherit from this class. This should only be used as a temporary measure until all callers are converted to use modern attribute access.

NOTE(berrange) This class will eventually be deleted.

get(key, value=<class 'oslo_versionedobjects.base._NotSpecifiedSentinel'>)

For backwards-compatibility with dict-based objects.

NOTE(danms): May be removed in the future.

class karbor.objects.base.KarborObjectRegistry(*args, **kwargs)

Bases: oslo_versionedobjects.base.VersionedObjectRegistry

registration_hook(cls, index)
class karbor.objects.base.KarborObjectSerializer

Bases: oslo_versionedobjects.base.VersionedObjectSerializer

OBJ_BASE_CLASS

alias of KarborObject

class karbor.objects.base.KarborPersistentObject

Bases: object

Mixin class for Persistent objects.

This adds the fields that we use in common for all persistent objects.

fields = {'created_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'deleted': Boolean(default=False,nullable=False), 'deleted_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'updated_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True)}
obj_as_admin()

Context manager to make an object call as an admin.

This temporarily modifies the context embedded in an object to be elevated() and restores it after the call completes. Example usage:

with obj.obj_as_admin():

obj.save()

class karbor.objects.base.ObjectListBase(*args, **kwargs)

Bases: oslo_versionedobjects.base.ObjectListBase

karbor.objects.checkpoint_record module

class karbor.objects.checkpoint_record.CheckpointRecord(context=None, **kwargs)

Bases: karbor.objects.base.KarborPersistentObject, karbor.objects.base.KarborObject, karbor.objects.base.KarborObjectDictCompat, karbor.objects.base.KarborComparableObject

VERSION = '1.0'
property checkpoint_id
property checkpoint_status
create()
property create_by
property created_at
property deleted
property deleted_at
destroy()
property extend_info
fields = {'checkpoint_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'checkpoint_status': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'create_by': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'created_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'deleted': Boolean(default=False,nullable=False), 'deleted_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'extend_info': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'operation_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'plan_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'project_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'provider_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'updated_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True)}
classmethod get_by_id(context, id)
property id
model

alias of karbor.db.sqlalchemy.models.CheckpointRecord

property operation_id
property plan_id
property project_id
property provider_id
save()

Save the changed fields back to the store.

This is optional for subclasses, but is presented here in the base class for consistency among those that do.

property updated_at
class karbor.objects.checkpoint_record.CheckpointRecordList(*args, **kwargs)

Bases: karbor.objects.base.ObjectListBase, karbor.objects.base.KarborObject

VERSION = '1.0'
fields = {'objects': List(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False)}
classmethod get_by_filters(context, filters, limit=None, marker=None, sort_keys=None, sort_dirs=None)
property objects

karbor.objects.operation_log module

class karbor.objects.operation_log.OperationLog(context=None, **kwargs)

Bases: karbor.objects.base.KarborPersistentObject, karbor.objects.base.KarborObject, karbor.objects.base.KarborObjectDictCompat, karbor.objects.base.KarborComparableObject

VERSION = '1.0'
property checkpoint_id
create()
property created_at
property deleted
property deleted_at
destroy()
property ended_at
property error_info
property extra_info
fields = {'checkpoint_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'created_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'deleted': Boolean(default=False,nullable=False), 'deleted_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'ended_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'error_info': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'extra_info': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'operation_type': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'plan_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'project_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'provider_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'restore_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'scheduled_operation_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'started_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'status': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'updated_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True)}
property id
model

alias of karbor.db.sqlalchemy.models.OperationLog

property operation_type
property plan_id
property project_id
property provider_id
property restore_id
save()

Save the changed fields back to the store.

This is optional for subclasses, but is presented here in the base class for consistency among those that do.

property scheduled_operation_id
property started_at
property status
property updated_at
class karbor.objects.operation_log.OperationLogList(*args, **kwargs)

Bases: karbor.objects.base.ObjectListBase, karbor.objects.base.KarborObject

VERSION = '1.0'
fields = {'objects': List(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False)}
classmethod get_all(context, marker, limit, sort_keys=None, sort_dirs=None, filters=None, offset=None)
classmethod get_all_by_project(context, project_id, marker, limit, sort_keys=None, sort_dirs=None, filters=None, offset=None)
property objects

karbor.objects.plan module

class karbor.objects.plan.Plan(*args, **kwargs)

Bases: karbor.objects.base.KarborPersistentObject, karbor.objects.base.KarborObject, karbor.objects.base.KarborObjectDictCompat, karbor.objects.base.KarborComparableObject

DEFAULT_EXPECTED_ATTR = ('resources',)
OPTIONAL_FIELDS = ('resources',)
VERSION = '1.0'
create()
property created_at
property deleted
property deleted_at
property description
destroy()
fields = {'created_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'deleted': Boolean(default=False,nullable=False), 'deleted_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'description': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'name': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'parameters': Dict(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'project_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'provider_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'resources': List(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'status': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'updated_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True)}
property id
model

alias of karbor.db.sqlalchemy.models.Plan

property name
obj_extra_fields = ['plan_resources']
obj_reset_changes(fields=None)

Reset the list of fields that have been changed.

Parameters
  • fields – List of fields to reset, or “all” if None.

  • recursive – Call obj_reset_changes(recursive=True) on any sub-objects within the list of fields being reset.

This is NOT “revert to previous values”.

Specifying fields on recursive resets will only be honored at the top level. Everything below the top will reset all.

obj_what_changed()

Returns a set of fields that have been modified.

property parameters
property project_id
property provider_id
property resources
save()

Save the changed fields back to the store.

This is optional for subclasses, but is presented here in the base class for consistency among those that do.

property status
property updated_at
class karbor.objects.plan.PlanList(*args, **kwargs)

Bases: karbor.objects.base.ObjectListBase, karbor.objects.base.KarborObject

VERSION = '1.0'
fields = {'objects': List(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False)}
classmethod get_all(context, marker, limit, sort_keys=None, sort_dirs=None, filters=None, offset=None)
classmethod get_all_by_project(context, project_id, marker, limit, sort_keys=None, sort_dirs=None, filters=None, offset=None)
property objects

karbor.objects.restore module

class karbor.objects.restore.Restore(context=None, **kwargs)

Bases: karbor.objects.base.KarborPersistentObject, karbor.objects.base.KarborObject, karbor.objects.base.KarborObjectDictCompat, karbor.objects.base.KarborComparableObject

VERSION = '1.0'
property checkpoint_id
create()
property created_at
property deleted
property deleted_at
destroy()
fields = {'checkpoint_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'created_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'deleted': Boolean(default=False,nullable=False), 'deleted_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'parameters': Dict(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'project_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'provider_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'resources_reason': Dict(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'resources_status': Dict(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'restore_target': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'status': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'updated_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True)}
property id
json_fields = ('parameters', 'resources_status', 'resources_reason')
model

alias of karbor.db.sqlalchemy.models.Restore

property parameters
property project_id
property provider_id
property resources_reason
property resources_status
property restore_target
save()

Save the changed fields back to the store.

This is optional for subclasses, but is presented here in the base class for consistency among those that do.

property status
update_resource_status(resource_type, resource_id, status, reason=None)
property updated_at
class karbor.objects.restore.RestoreList(*args, **kwargs)

Bases: karbor.objects.base.ObjectListBase, karbor.objects.base.KarborObject

VERSION = '1.0'
fields = {'objects': List(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False)}
classmethod get_all(context, marker, limit, sort_keys=None, sort_dirs=None, filters=None, offset=None)
classmethod get_all_by_project(context, project_id, marker, limit, sort_keys=None, sort_dirs=None, filters=None, offset=None)
property objects

karbor.objects.scheduled_operation module

class karbor.objects.scheduled_operation.ScheduledOperation(context=None, **kwargs)

Bases: karbor.objects.base.KarborPersistentObject, karbor.objects.base.KarborObject, karbor.objects.base.KarborObjectDictCompat, karbor.objects.base.KarborComparableObject

INSTANCE_OPTIONAL_JOINED_FIELDS = ['trigger']
VERSION = '1.0'
create()
property created_at
property deleted
property deleted_at
property description
destroy()
property enabled
fields = {'created_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'deleted': Boolean(default=False,nullable=False), 'deleted_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'description': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'enabled': Boolean(default=True,nullable=False), 'id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'name': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'operation_definition': Dict(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'operation_type': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'project_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'trigger': Object(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'trigger_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'updated_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'user_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False)}
classmethod get_by_id(context, id, expected_attrs=[])
property id
model

alias of karbor.db.sqlalchemy.models.ScheduledOperation

property name
property operation_definition
property operation_type
property project_id
save()

Save the changed fields back to the store.

This is optional for subclasses, but is presented here in the base class for consistency among those that do.

property trigger
property trigger_id
property updated_at
property user_id
class karbor.objects.scheduled_operation.ScheduledOperationList(*args, **kwargs)

Bases: karbor.objects.base.ObjectListBase, karbor.objects.base.KarborObject

VERSION = '1.0'
fields = {'objects': List(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False)}
classmethod get_by_filters(context, filters, limit=None, marker=None, sort_keys=None, sort_dirs=None)
property objects

karbor.objects.scheduled_operation_log module

class karbor.objects.scheduled_operation_log.ScheduledOperationLog(context=None, **kwargs)

Bases: karbor.objects.base.KarborPersistentObject, karbor.objects.base.KarborObject, karbor.objects.base.KarborObjectDictCompat, karbor.objects.base.KarborComparableObject

VERSION = '1.0'
property actual_start_time
create()
property created_at
property deleted
property deleted_at
destroy()
classmethod destroy_oldest(context, operation_id, retained_num, excepted_states=[])
property end_time
property expect_start_time
property extend_info
fields = {'actual_start_time': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'created_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'deleted': Boolean(default=False,nullable=False), 'deleted_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'end_time': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'expect_start_time': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'extend_info': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'id': Integer(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'operation_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'state': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'triggered_time': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'updated_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True)}
classmethod get_by_id(context, id)
property id
model

alias of karbor.db.sqlalchemy.models.ScheduledOperationLog

property operation_id
save()

Save the changed fields back to the store.

This is optional for subclasses, but is presented here in the base class for consistency among those that do.

property state
property triggered_time
property updated_at
class karbor.objects.scheduled_operation_log.ScheduledOperationLogList(*args, **kwargs)

Bases: karbor.objects.base.ObjectListBase, karbor.objects.base.KarborObject

VERSION = '1.0'
fields = {'objects': List(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False)}
classmethod get_by_filters(context, filters, limit=None, marker=None, sort_keys=None, sort_dirs=None)
property objects

karbor.objects.scheduled_operation_state module

class karbor.objects.scheduled_operation_state.ScheduledOperationState(context=None, **kwargs)

Bases: karbor.objects.base.KarborPersistentObject, karbor.objects.base.KarborObject, karbor.objects.base.KarborObjectDictCompat, karbor.objects.base.KarborComparableObject

INSTANCE_OPTIONAL_JOINED_FIELDS = ['operation']
VERSION = '1.0'
create()
property created_at
property deleted
property deleted_at
destroy()
property end_time_for_run
fields = {'created_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'deleted': Boolean(default=False,nullable=False), 'deleted_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'end_time_for_run': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'id': Integer(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'operation': Object(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'operation_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'service_id': Integer(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'state': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'trust_id': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'updated_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True)}
classmethod get_by_operation_id(context, operation_id, expected_attrs=[])
property id
model

alias of karbor.db.sqlalchemy.models.ScheduledOperationState

property operation
property operation_id
save()

Save the changed fields back to the store.

This is optional for subclasses, but is presented here in the base class for consistency among those that do.

property service_id
property state
property trust_id
property updated_at
class karbor.objects.scheduled_operation_state.ScheduledOperationStateList(*args, **kwargs)

Bases: karbor.objects.base.ObjectListBase, karbor.objects.base.KarborObject

VERSION = '1.0'
fields = {'objects': List(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False)}
classmethod get_by_filters(context, filters, limit=None, marker=None, sort_keys=None, sort_dirs=None, columns_to_join=[])
property objects

karbor.objects.service module

class karbor.objects.service.Service(context=None, **kwargs)

Bases: karbor.objects.base.KarborPersistentObject, karbor.objects.base.KarborObject, karbor.objects.base.KarborObjectDictCompat, karbor.objects.base.KarborComparableObject

VERSION = '1.0'
property binary
create()
property created_at
property deleted
property deleted_at
destroy()
property disabled
property disabled_reason
fields = {'binary': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'created_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'deleted': Boolean(default=False,nullable=False), 'deleted_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'disabled': Boolean(default=False,nullable=False), 'disabled_reason': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'host': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'id': Integer(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'modified_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'report_count': Integer(default=0,nullable=False), 'rpc_available_version': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'rpc_current_version': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'topic': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'updated_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True)}
classmethod get_by_args(context, host, binary_key)
classmethod get_by_host_and_topic(context, host, topic)
classmethod get_by_id(context, id)
property host
property id
model

alias of karbor.db.sqlalchemy.models.Service

property modified_at
property report_count
property rpc_available_version
property rpc_current_version
save()

Save the changed fields back to the store.

This is optional for subclasses, but is presented here in the base class for consistency among those that do.

property topic
property updated_at
class karbor.objects.service.ServiceList(*args, **kwargs)

Bases: karbor.objects.base.ObjectListBase, karbor.objects.base.KarborObject

VERSION = '1.0'
child_versions = {'1.0': '1.0'}
fields = {'objects': List(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False)}
classmethod get_all(context, filters=None)
classmethod get_all_by_args(context, host, binary)
classmethod get_all_by_topic(context, topic, disabled=None)
property objects

karbor.objects.trigger module

class karbor.objects.trigger.Trigger(context=None, **kwargs)

Bases: karbor.objects.base.KarborPersistentObject, karbor.objects.base.KarborObject, karbor.objects.base.KarborObjectDictCompat, karbor.objects.base.KarborComparableObject

VERSION = '1.0'
create()
property created_at
property deleted
property deleted_at
destroy()
fields = {'created_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'deleted': Boolean(default=False,nullable=False), 'deleted_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'name': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'project_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'properties': Dict(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'type': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'updated_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True)}
classmethod get_by_id(context, id)
property id
model

alias of karbor.db.sqlalchemy.models.Trigger

property name
property project_id
property properties
save()

Save the changed fields back to the store.

This is optional for subclasses, but is presented here in the base class for consistency among those that do.

property type
property updated_at
class karbor.objects.trigger.TriggerList(*args, **kwargs)

Bases: karbor.objects.base.ObjectListBase, karbor.objects.base.KarborObject

VERSION = '1.0'
fields = {'objects': List(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False)}
classmethod get_by_filters(context, filters, limit=None, marker=None, sort_keys=None, sort_dirs=None)
property objects

karbor.objects.verification module

class karbor.objects.verification.Verification(context=None, **kwargs)

Bases: karbor.objects.base.KarborPersistentObject, karbor.objects.base.KarborObject, karbor.objects.base.KarborObjectDictCompat, karbor.objects.base.KarborComparableObject

VERSION = '1.0'
property checkpoint_id
create()
property created_at
property deleted
property deleted_at
destroy()
fields = {'checkpoint_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'created_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'deleted': Boolean(default=False,nullable=False), 'deleted_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'parameters': Dict(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'project_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'provider_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'resources_reason': Dict(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'resources_status': Dict(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'status': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'updated_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True)}
property id
json_fields = ('parameters', 'resources_status', 'resources_reason')
model

alias of karbor.db.sqlalchemy.models.Verification

property parameters
property project_id
property provider_id
property resources_reason
property resources_status
save()

Save the changed fields back to the store.

This is optional for subclasses, but is presented here in the base class for consistency among those that do.

property status
update_resource_status(resource_type, resource_id, status, reason=None)
property updated_at
class karbor.objects.verification.VerificationList(*args, **kwargs)

Bases: karbor.objects.base.ObjectListBase, karbor.objects.base.KarborObject

VERSION = '1.0'
fields = {'objects': List(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False)}
classmethod get_all(context, marker, limit, sort_keys=None, sort_dirs=None, filters=None, offset=None)
classmethod get_all_by_project(context, project_id, marker, limit, sort_keys=None, sort_dirs=None, filters=None, offset=None)
property objects

Module contents

karbor.objects.register_all()