Skip to content

cmem_client.models.project¤

Corporate Memory project models and metadata.

This module defines models for representing Corporate Memory DataIntegration projects, including their metadata such as labels, descriptions, and tags.

Projects are the primary organizational unit in Corporate Memory’s build environment, containing datasets, transformations, and other integration components. The Project model provides validation and serialization for project data exchanged with the DataIntegration API.

Classes:

Functions:

FailedTasksReport¤

Bases: Model

The failed tasks report

Attributes:

  • task_id (str | None) – ID of the task which failed to load.
  • error_summary (str | None) – Short summary of what went wrong.
  • task_label (str | None) – Human readable name of the task.
  • task_description (str | None) – Description of the task.
  • error_message (str | None) – Full error message.
  • project_id (str | None) – ID of the project holding the task.
  • stack_trace (dict[str, Any] | None) – Stack trace of the error, as reported by DataIntegration.

error_message¤

error_message: str | None = Field(alias='errorMessage', default=None)

error_summary¤

error_summary: str | None = Field(alias='errorSummary', default=None)

model_config¤

model_config = ConfigDict(extra='allow', populate_by_name=True)

project_id¤

project_id: str | None = Field(alias='projectId', default=None)

stack_trace¤

stack_trace: dict[str, Any] | None = Field(alias='stackTrace', default=None)

task_description¤

task_description: str | None = Field(alias='taskDescription', default=None)

task_id¤

task_id: str | None = Field(alias='taskId', default=None)

task_label¤

task_label: str | None = Field(alias='taskLabel', default=None)

Project¤

Bases: ReadRepositoryItem

A Build (DataIntegration) Project

Attributes:

  • name (str) – ID of the project, unique within the deployment. This is the key of the repository, and it is what the other repositories mean by project_id.
  • meta_data (ProjectMetaData) – Label, description and tags of the project.

Functions:

get_id¤

get_id()

Get the ID of the project

meta_data¤

meta_data: ProjectMetaData = Field(alias='metaData', default_factory=default_metadata)

model_config¤

model_config = ConfigDict(extra='allow', populate_by_name=True)

model_post_init¤

model_post_init(context)

Set the label to the name if needed

name¤

name: str

ProjectMetaData¤

Bases: Model

Project Meta Data

Attributes:

  • label (str | None) – Human readable name of the project. DataIntegration refuses an empty one, so a project created without a label gets its ID instead.
  • description (str | None) – Description of the project.
  • tags (list[str] | None) – Tags attached to the project.
  • modified (str | None) – When the project was last modified.
  • last_modified_by_user (str | None) – IRI of the account which modified it last.

description¤

description: str | None = None

label¤

label: str | None = None

last_modified_by_user¤

last_modified_by_user: str | None = Field(alias='lastModifiedByUser', default=None)

model_config¤

model_config = ConfigDict(extra='allow', populate_by_name=True)

modified¤

modified: str | None = None

tags¤

tags: list[str] | None = None

default_metadata¤

default_metadata()

Get the current UTC datetime

Comments