glare.objects.meta package

Submodules

glare.objects.meta.fields module

class glare.objects.meta.fields.BlobField(**kwargs)[source]

Bases: oslo_versionedobjects.fields.AutoTypedField

AUTO_TYPE = <glare.objects.meta.fields.BlobFieldType object>
class glare.objects.meta.fields.BlobFieldType[source]

Bases: oslo_versionedobjects.fields.FieldType

Blob field contains reference to blob location.

ACTIVE = 'active'
BLOB_SCHEMA = {'properties': {'content_type': {'type': ['string', 'null']}, 'external': {'type': 'boolean'}, 'id': {'type': 'string'}, 'md5': {'type': ['string', 'null']}, 'sha1': {'type': ['string', 'null']}, 'sha256': {'type': ['string', 'null']}, 'size': {'type': ['number', 'null']}, 'status': {'enum': ['saving', 'active'], 'type': 'string'}, 'url': {'format': 'uri', 'maxLength': 2048, 'type': ['string', 'null']}}, 'required': ['url', 'size', 'md5', 'sha1', 'sha256', 'external', 'status', 'id', 'content_type'], 'type': 'object'}
BLOB_STATUS = ('saving', 'active')
SAVING = 'saving'
static coerce(obj, field, value)[source]

Validate and store blob info inside oslo.vo

static to_primitive(obj, field, value)[source]
class glare.objects.meta.fields.Dict(element_type, **kwargs)[source]

Bases: oslo_versionedobjects.fields.AutoTypedField

Bases: oslo_versionedobjects.fields.AutoTypedField

AUTO_TYPE = <glare.objects.meta.fields.LinkFieldType object>
class glare.objects.meta.fields.LinkFieldType[source]

Bases: oslo_versionedobjects.fields.FieldType

Link field specifies Artifact dependency on other artifact or some external resource. From technical perspective it is just soft link to Glare Artifact or https/http resource. So Artifact users can download the referenced file by that link.

static coerce(obj, field, value)[source]
static get_type_name(link)[source]
static is_external(link)[source]
class glare.objects.meta.fields.List(element_type, **kwargs)[source]

Bases: oslo_versionedobjects.fields.AutoTypedField

class glare.objects.meta.fields.Version[source]

Bases: oslo_versionedobjects.fields.FieldType

static coerce(obj, field, value)[source]
class glare.objects.meta.fields.VersionField(**kwargs)[source]

Bases: oslo_versionedobjects.fields.AutoTypedField

AUTO_TYPE = <glare.objects.meta.fields.Version object>

glare.objects.meta.file_utils module

Contains additional file utils that may be useful for upload hooks.

glare.objects.meta.file_utils.create_temporary_file(stream, suffix='')[source]

Create a temporary local file from a stream.

Parameters:
  • stream – stream of bytes to be stored in a temporary file
  • suffix – (optional) file name suffix
glare.objects.meta.file_utils.extract_zip_to_temporary_folder(tfile)[source]

Create temporary folder and extract all file contents there.

Parameters:tfile – zip archive to be extracted
glare.objects.meta.file_utils.unpack_zip_archive_to_artifact_folder(context, af, zip_ref, folder_name)[source]

Unpack zip archive to artifact folder.

Parameters:
  • context – user context
  • af – artifact object
  • zip_ref – zip archive to be extracted
  • folder_name – name of the artifact folder where to extract data
glare.objects.meta.file_utils.upload_content_file(context, af, data, blob_dict, key_name, content_type='application/octet-stream')[source]

Upload a file to a blob dictionary.

Parameters:
  • context – user context
  • af – artifact object
  • data – bytes that need to be stored in the blob dictionary
  • blob_dict – name of the blob_dictionary field
  • key_name – name of key in the dictionary
  • content_type – (optional) specifies mime type of uploading data

glare.objects.meta.registry module

class glare.objects.meta.registry.ArtifactRegistry[source]

Bases: oslo_versionedobjects.base.VersionedObjectRegistry

Artifact Registry is responsible for registration of artifacts and returning appropriate artifact types based on artifact type name.

enabled_types = {'all': <class 'glare.objects.all.All'>, 'heat_environments': <class 'glare.objects.heat_environment.HeatEnvironment'>, 'heat_templates': <class 'glare.objects.heat_template.HeatTemplate'>, 'images': <class 'glare.objects.image.Image'>, 'murano_packages': <class 'glare.objects.murano_package.MuranoPackage'>, 'tosca_templates': <class 'glare.objects.tosca_template.TOSCATemplate'>}
classmethod get_artifact_type(type_name)[source]

Return artifact type based on artifact type name.

Parameters:type_name – name of artifact type
Returns:artifact class
classmethod register_all_artifacts()[source]

Register all artifacts in Glare.

classmethod reset_registry()[source]

Resets all registered artifact type classes.

glare.objects.meta.registry.get_subclasses(module, base_class)[source]
glare.objects.meta.registry.import_modules_list(modules)[source]
glare.objects.meta.registry.import_submodules(module)[source]

Import all submodules of a module.

Parameters:module – Package name
Returns:list of imported modules

glare.objects.meta.validators module

class glare.objects.meta.validators.AllowedDictKeys(allowed_keys)[source]

Bases: glare.objects.meta.validators.Validator

static get_allowed_types()[source]
to_jsonschema()[source]
class glare.objects.meta.validators.AllowedValues(allowed_values)[source]

Bases: glare.objects.meta.validators.Validator

static get_allowed_types()[source]
to_jsonschema()[source]
class glare.objects.meta.validators.DictElementValidator(validators)[source]

Bases: glare.objects.meta.validators.ElementValidator

static get_allowed_types()[source]
to_jsonschema()[source]
class glare.objects.meta.validators.ElementValidator(validators)[source]

Bases: glare.objects.meta.validators.Validator

class glare.objects.meta.validators.ForbiddenChars(forbidden_chars)[source]

Bases: glare.objects.meta.validators.Validator

static get_allowed_types()[source]
to_jsonschema()[source]
class glare.objects.meta.validators.ListElementValidator(validators)[source]

Bases: glare.objects.meta.validators.ElementValidator

static get_allowed_types()[source]
to_jsonschema()[source]
class glare.objects.meta.validators.MaxDictKeyLen(size)[source]

Bases: glare.objects.meta.validators.SizeValidator

static get_allowed_types()[source]
class glare.objects.meta.validators.MaxDictSize(size)[source]

Bases: glare.objects.meta.validators.MaxSize

static get_allowed_types()[source]
to_jsonschema()[source]
class glare.objects.meta.validators.MaxListSize(size)[source]

Bases: glare.objects.meta.validators.MaxSize

static get_allowed_types()[source]
to_jsonschema()[source]
class glare.objects.meta.validators.MaxNumberSize(size)[source]

Bases: glare.objects.meta.validators.SizeValidator

static get_allowed_types()[source]
to_jsonschema()[source]
class glare.objects.meta.validators.MaxSize(size)[source]

Bases: glare.objects.meta.validators.SizeValidator

class glare.objects.meta.validators.MaxStrLen(size)[source]

Bases: glare.objects.meta.validators.SizeValidator

static get_allowed_types()[source]
to_jsonschema()[source]
class glare.objects.meta.validators.MinDictKeyLen(size)[source]

Bases: glare.objects.meta.validators.SizeValidator

static get_allowed_types()[source]
class glare.objects.meta.validators.MinDictSize(size)[source]

Bases: glare.objects.meta.validators.MinSize

static get_allowed_types()[source]
to_jsonschema()[source]
class glare.objects.meta.validators.MinListSize(size)[source]

Bases: glare.objects.meta.validators.MinSize

static get_allowed_types()[source]
to_jsonschema()[source]
class glare.objects.meta.validators.MinNumberSize(size)[source]

Bases: glare.objects.meta.validators.SizeValidator

static get_allowed_types()[source]
to_jsonschema()[source]
class glare.objects.meta.validators.MinSize(size)[source]

Bases: glare.objects.meta.validators.SizeValidator

class glare.objects.meta.validators.MinStrLen(size)[source]

Bases: glare.objects.meta.validators.SizeValidator

static get_allowed_types()[source]
to_jsonschema()[source]
class glare.objects.meta.validators.Regex(pattern)[source]

Bases: glare.objects.meta.validators.Validator

static get_allowed_types()[source]
to_jsonschema()[source]
class glare.objects.meta.validators.RequiredDictKeys(required_keys)[source]

Bases: glare.objects.meta.validators.Validator

static get_allowed_types()[source]
to_jsonschema()[source]
class glare.objects.meta.validators.SizeValidator(size)[source]

Bases: glare.objects.meta.validators.Validator

class glare.objects.meta.validators.UUID[source]

Bases: glare.objects.meta.validators.Validator

static get_allowed_types()[source]
to_jsonschema()[source]
class glare.objects.meta.validators.Unique(convert_to_set=False)[source]

Bases: glare.objects.meta.validators.Validator

static get_allowed_types()[source]
to_jsonschema()[source]
class glare.objects.meta.validators.Validator[source]

Bases: object

Common interface for all validators.

check_type_allowed(field_type)[source]
static get_allowed_types()[source]
to_jsonschema()[source]
class glare.objects.meta.validators.Version[source]

Bases: glare.objects.meta.validators.Validator

static get_allowed_types()[source]
to_jsonschema()[source]

glare.objects.meta.wrappers module

This file contains classes that wrap nat

glare.objects.meta.wrappers.Attribute

alias of glare.objects.meta.wrappers.Field

glare.objects.meta.wrappers.BlobAttribute

alias of glare.objects.meta.wrappers.BlobField

glare.objects.meta.wrappers.BlobDictAttribute

alias of glare.objects.meta.wrappers.FolderField

class glare.objects.meta.wrappers.BlobField(max_blob_size=10485760, **kwargs)[source]

Bases: glare.objects.meta.wrappers.Field

glare.objects.meta.wrappers.CompoundAttribute

alias of glare.objects.meta.wrappers.CompoundField

class glare.objects.meta.wrappers.CompoundField(field_class, element_type, element_validators=None, **kwargs)[source]

Bases: glare.objects.meta.wrappers.Field

get_element_validators()[source]
glare.objects.meta.wrappers.DictAttribute

alias of glare.objects.meta.wrappers.DictField

class glare.objects.meta.wrappers.DictField(element_type, max_size=255, **kwargs)[source]

Bases: glare.objects.meta.wrappers.CompoundField

get_default_validators()[source]
class glare.objects.meta.wrappers.Field(field_class, mutable=False, required_on_activate=True, system=False, validators=None, nullable=True, default=None, sortable=False, filter_ops=None, description='', metadata=None)[source]

Bases: object

static get_allowed_filter_ops(field)[source]
static get_default_filter_ops(field)[source]
get_default_validators()[source]
get_field()[source]
classmethod init(*args, **kwargs)[source]

Fabric to build fields.

class glare.objects.meta.wrappers.FolderField(max_blob_size=10485760, max_folder_size=2673868800, **kwargs)[source]

Bases: glare.objects.meta.wrappers.DictField

glare.objects.meta.wrappers.ListAttribute

alias of glare.objects.meta.wrappers.ListField

class glare.objects.meta.wrappers.ListField(element_type, max_size=255, **kwargs)[source]

Bases: glare.objects.meta.wrappers.CompoundField

get_default_validators()[source]

Module contents