zenml-nightly 0.58.2.dev20240615__py3-none-any.whl → 0.58.2.dev20240623__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- zenml/VERSION +1 -1
- zenml/_hub/client.py +8 -5
- zenml/actions/base_action.py +8 -10
- zenml/artifact_stores/base_artifact_store.py +20 -15
- zenml/artifact_stores/local_artifact_store.py +3 -2
- zenml/artifacts/artifact_config.py +34 -19
- zenml/artifacts/external_artifact.py +18 -8
- zenml/artifacts/external_artifact_config.py +14 -6
- zenml/artifacts/unmaterialized_artifact.py +2 -11
- zenml/cli/__init__.py +6 -0
- zenml/cli/artifact.py +20 -2
- zenml/cli/base.py +1 -1
- zenml/cli/served_model.py +0 -1
- zenml/cli/server.py +3 -3
- zenml/cli/utils.py +36 -40
- zenml/cli/web_login.py +2 -2
- zenml/client.py +198 -24
- zenml/client_lazy_loader.py +20 -14
- zenml/config/base_settings.py +5 -6
- zenml/config/build_configuration.py +1 -1
- zenml/config/compiler.py +3 -3
- zenml/config/docker_settings.py +27 -28
- zenml/config/global_config.py +33 -37
- zenml/config/pipeline_configurations.py +8 -11
- zenml/config/pipeline_run_configuration.py +6 -2
- zenml/config/pipeline_spec.py +3 -4
- zenml/config/resource_settings.py +8 -9
- zenml/config/schedule.py +16 -20
- zenml/config/secret_reference_mixin.py +6 -3
- zenml/config/secrets_store_config.py +16 -23
- zenml/config/server_config.py +50 -46
- zenml/config/settings_resolver.py +1 -1
- zenml/config/source.py +45 -35
- zenml/config/step_configurations.py +53 -31
- zenml/config/step_run_info.py +3 -0
- zenml/config/store_config.py +20 -19
- zenml/config/strict_base_model.py +2 -6
- zenml/constants.py +26 -2
- zenml/container_registries/base_container_registry.py +3 -2
- zenml/container_registries/default_container_registry.py +3 -3
- zenml/event_hub/base_event_hub.py +1 -1
- zenml/event_sources/base_event_source.py +11 -16
- zenml/exceptions.py +4 -0
- zenml/integrations/airflow/__init__.py +2 -6
- zenml/integrations/airflow/flavors/airflow_orchestrator_flavor.py +6 -7
- zenml/integrations/airflow/orchestrators/airflow_orchestrator.py +13 -249
- zenml/integrations/airflow/orchestrators/dag_generator.py +5 -3
- zenml/integrations/argilla/flavors/argilla_annotator_flavor.py +5 -4
- zenml/integrations/aws/__init__.py +1 -1
- zenml/integrations/aws/flavors/aws_container_registry_flavor.py +3 -2
- zenml/integrations/aws/flavors/sagemaker_orchestrator_flavor.py +11 -5
- zenml/integrations/aws/flavors/sagemaker_step_operator_flavor.py +6 -2
- zenml/integrations/aws/service_connectors/aws_service_connector.py +5 -4
- zenml/integrations/aws/step_operators/sagemaker_step_operator.py +1 -1
- zenml/integrations/azure/flavors/azureml_step_operator_flavor.py +4 -4
- zenml/integrations/azure/service_connectors/azure_service_connector.py +4 -3
- zenml/integrations/azure/step_operators/azureml_step_operator.py +2 -1
- zenml/integrations/bentoml/steps/bentoml_deployer.py +1 -1
- zenml/integrations/bitbucket/plugins/event_sources/bitbucket_webhook_event_source.py +8 -12
- zenml/integrations/comet/flavors/comet_experiment_tracker_flavor.py +1 -1
- zenml/integrations/constants.py +0 -1
- zenml/integrations/deepchecks/__init__.py +1 -0
- zenml/integrations/evidently/__init__.py +5 -3
- zenml/integrations/evidently/column_mapping.py +11 -3
- zenml/integrations/evidently/data_validators/evidently_data_validator.py +21 -3
- zenml/integrations/evidently/metrics.py +5 -6
- zenml/integrations/evidently/tests.py +5 -6
- zenml/integrations/facets/models.py +2 -6
- zenml/integrations/feast/__init__.py +3 -1
- zenml/integrations/feast/feature_stores/feast_feature_store.py +0 -23
- zenml/integrations/gcp/__init__.py +1 -1
- zenml/integrations/gcp/flavors/vertex_orchestrator_flavor.py +1 -1
- zenml/integrations/gcp/flavors/vertex_step_operator_flavor.py +1 -1
- zenml/integrations/gcp/orchestrators/vertex_orchestrator.py +234 -103
- zenml/integrations/gcp/service_connectors/gcp_service_connector.py +57 -42
- zenml/integrations/gcp/step_operators/vertex_step_operator.py +1 -0
- zenml/integrations/github/code_repositories/github_code_repository.py +1 -1
- zenml/integrations/github/plugins/event_sources/github_webhook_event_source.py +9 -13
- zenml/integrations/great_expectations/__init__.py +1 -1
- zenml/integrations/great_expectations/data_validators/ge_data_validator.py +44 -44
- zenml/integrations/great_expectations/flavors/great_expectations_data_validator_flavor.py +35 -2
- zenml/integrations/great_expectations/ge_store_backend.py +24 -11
- zenml/integrations/great_expectations/materializers/ge_materializer.py +3 -3
- zenml/integrations/great_expectations/utils.py +5 -5
- zenml/integrations/huggingface/__init__.py +3 -0
- zenml/integrations/huggingface/flavors/huggingface_model_deployer_flavor.py +1 -1
- zenml/integrations/huggingface/steps/__init__.py +3 -0
- zenml/integrations/huggingface/steps/accelerate_runner.py +149 -0
- zenml/integrations/huggingface/steps/huggingface_deployer.py +2 -2
- zenml/integrations/hyperai/flavors/hyperai_orchestrator_flavor.py +1 -1
- zenml/integrations/hyperai/service_connectors/hyperai_service_connector.py +4 -3
- zenml/integrations/kubeflow/__init__.py +1 -1
- zenml/integrations/kubeflow/flavors/kubeflow_orchestrator_flavor.py +48 -81
- zenml/integrations/kubeflow/orchestrators/kubeflow_orchestrator.py +295 -245
- zenml/integrations/kubernetes/flavors/kubernetes_orchestrator_flavor.py +1 -1
- zenml/integrations/kubernetes/orchestrators/kubernetes_orchestrator_entrypoint.py +11 -2
- zenml/integrations/kubernetes/pod_settings.py +17 -31
- zenml/integrations/kubernetes/service_connectors/kubernetes_service_connector.py +8 -7
- zenml/integrations/label_studio/__init__.py +1 -3
- zenml/integrations/label_studio/annotators/label_studio_annotator.py +3 -4
- zenml/integrations/label_studio/flavors/label_studio_annotator_flavor.py +2 -2
- zenml/integrations/langchain/__init__.py +5 -1
- zenml/integrations/langchain/materializers/document_materializer.py +44 -8
- zenml/integrations/mlflow/__init__.py +9 -3
- zenml/integrations/mlflow/experiment_trackers/mlflow_experiment_tracker.py +1 -1
- zenml/integrations/mlflow/flavors/mlflow_experiment_tracker_flavor.py +29 -37
- zenml/integrations/mlflow/model_registries/mlflow_model_registry.py +4 -4
- zenml/integrations/mlflow/steps/mlflow_deployer.py +1 -1
- zenml/integrations/neptune/flavors/neptune_experiment_tracker_flavor.py +1 -1
- zenml/integrations/neural_prophet/__init__.py +5 -1
- zenml/integrations/pigeon/flavors/pigeon_annotator_flavor.py +1 -1
- zenml/integrations/s3/flavors/s3_artifact_store_flavor.py +9 -8
- zenml/integrations/seldon/seldon_client.py +52 -67
- zenml/integrations/seldon/services/seldon_deployment.py +3 -3
- zenml/integrations/seldon/steps/seldon_deployer.py +4 -4
- zenml/integrations/skypilot/flavors/skypilot_orchestrator_base_vm_config.py +15 -5
- zenml/integrations/skypilot_aws/__init__.py +1 -1
- zenml/integrations/skypilot_aws/flavors/skypilot_orchestrator_aws_vm_flavor.py +1 -1
- zenml/integrations/skypilot_azure/__init__.py +1 -1
- zenml/integrations/skypilot_azure/flavors/skypilot_orchestrator_azure_vm_flavor.py +1 -1
- zenml/integrations/skypilot_gcp/__init__.py +2 -1
- zenml/integrations/skypilot_gcp/flavors/skypilot_orchestrator_gcp_vm_flavor.py +1 -1
- zenml/integrations/skypilot_lambda/flavors/skypilot_orchestrator_lambda_vm_flavor.py +2 -2
- zenml/integrations/spark/flavors/spark_step_operator_flavor.py +1 -1
- zenml/integrations/spark/step_operators/spark_step_operator.py +2 -0
- zenml/integrations/tekton/__init__.py +1 -1
- zenml/integrations/tekton/flavors/tekton_orchestrator_flavor.py +66 -23
- zenml/integrations/tekton/orchestrators/tekton_orchestrator.py +547 -233
- zenml/integrations/tensorboard/__init__.py +1 -12
- zenml/integrations/tensorboard/services/tensorboard_service.py +3 -5
- zenml/integrations/tensorboard/visualizers/tensorboard_visualizer.py +6 -6
- zenml/integrations/tensorflow/__init__.py +2 -10
- zenml/integrations/tensorflow/materializers/keras_materializer.py +17 -9
- zenml/integrations/wandb/flavors/wandb_experiment_tracker_flavor.py +9 -14
- zenml/integrations/whylogs/flavors/whylogs_data_validator_flavor.py +1 -1
- zenml/lineage_graph/lineage_graph.py +1 -1
- zenml/logging/step_logging.py +15 -7
- zenml/materializers/built_in_materializer.py +3 -3
- zenml/materializers/pydantic_materializer.py +2 -2
- zenml/metadata/lazy_load.py +4 -4
- zenml/metadata/metadata_types.py +64 -4
- zenml/model/model.py +79 -54
- zenml/model_deployers/base_model_deployer.py +14 -12
- zenml/model_registries/base_model_registry.py +17 -15
- zenml/models/__init__.py +79 -206
- zenml/models/v2/base/base.py +54 -41
- zenml/models/v2/base/base_plugin_flavor.py +2 -6
- zenml/models/v2/base/filter.py +91 -76
- zenml/models/v2/base/page.py +2 -12
- zenml/models/v2/base/scoped.py +4 -7
- zenml/models/v2/core/api_key.py +22 -8
- zenml/models/v2/core/artifact.py +2 -2
- zenml/models/v2/core/artifact_version.py +74 -40
- zenml/models/v2/core/code_repository.py +37 -10
- zenml/models/v2/core/component.py +65 -16
- zenml/models/v2/core/device.py +14 -4
- zenml/models/v2/core/event_source.py +1 -2
- zenml/models/v2/core/flavor.py +74 -8
- zenml/models/v2/core/logs.py +68 -8
- zenml/models/v2/core/model.py +8 -4
- zenml/models/v2/core/model_version.py +25 -6
- zenml/models/v2/core/model_version_artifact.py +51 -21
- zenml/models/v2/core/model_version_pipeline_run.py +45 -13
- zenml/models/v2/core/pipeline.py +37 -72
- zenml/models/v2/core/pipeline_build.py +29 -17
- zenml/models/v2/core/pipeline_deployment.py +18 -6
- zenml/models/v2/core/pipeline_namespace.py +113 -0
- zenml/models/v2/core/pipeline_run.py +50 -22
- zenml/models/v2/core/run_metadata.py +59 -36
- zenml/models/v2/core/schedule.py +37 -24
- zenml/models/v2/core/secret.py +31 -12
- zenml/models/v2/core/service.py +64 -36
- zenml/models/v2/core/service_account.py +24 -11
- zenml/models/v2/core/service_connector.py +219 -44
- zenml/models/v2/core/stack.py +45 -17
- zenml/models/v2/core/step_run.py +28 -8
- zenml/models/v2/core/tag.py +8 -4
- zenml/models/v2/core/trigger.py +2 -2
- zenml/models/v2/core/trigger_execution.py +1 -0
- zenml/models/v2/core/user.py +18 -21
- zenml/models/v2/core/workspace.py +13 -3
- zenml/models/v2/misc/build_item.py +3 -3
- zenml/models/v2/misc/external_user.py +2 -6
- zenml/models/v2/misc/hub_plugin_models.py +9 -9
- zenml/models/v2/misc/loaded_visualization.py +2 -2
- zenml/models/v2/misc/service_connector_type.py +8 -17
- zenml/models/v2/misc/user_auth.py +7 -2
- zenml/new/pipelines/build_utils.py +3 -3
- zenml/new/pipelines/pipeline.py +17 -13
- zenml/new/pipelines/run_utils.py +103 -1
- zenml/orchestrators/base_orchestrator.py +10 -7
- zenml/orchestrators/local_docker/local_docker_orchestrator.py +1 -1
- zenml/orchestrators/step_launcher.py +28 -4
- zenml/orchestrators/step_runner.py +3 -6
- zenml/orchestrators/utils.py +1 -1
- zenml/plugins/base_plugin_flavor.py +6 -10
- zenml/plugins/plugin_flavor_registry.py +3 -7
- zenml/secret/base_secret.py +7 -8
- zenml/service_connectors/docker_service_connector.py +4 -3
- zenml/service_connectors/service_connector.py +5 -12
- zenml/service_connectors/service_connector_registry.py +2 -4
- zenml/services/container/container_service.py +1 -1
- zenml/services/container/container_service_endpoint.py +1 -1
- zenml/services/local/local_service.py +1 -1
- zenml/services/local/local_service_endpoint.py +1 -1
- zenml/services/service.py +16 -10
- zenml/services/service_type.py +4 -5
- zenml/services/terraform/terraform_service.py +1 -1
- zenml/stack/flavor.py +1 -5
- zenml/stack/flavor_registry.py +4 -4
- zenml/stack/stack.py +4 -1
- zenml/stack/stack_component.py +55 -31
- zenml/step_operators/step_operator_entrypoint_configuration.py +1 -0
- zenml/steps/base_step.py +34 -28
- zenml/steps/entrypoint_function_utils.py +3 -5
- zenml/steps/utils.py +12 -14
- zenml/utils/cuda_utils.py +50 -0
- zenml/utils/deprecation_utils.py +18 -20
- zenml/utils/dict_utils.py +1 -1
- zenml/utils/filesync_model.py +65 -28
- zenml/utils/function_utils.py +260 -0
- zenml/utils/json_utils.py +131 -0
- zenml/utils/mlstacks_utils.py +2 -2
- zenml/utils/pipeline_docker_image_builder.py +9 -0
- zenml/utils/pydantic_utils.py +270 -62
- zenml/utils/secret_utils.py +65 -12
- zenml/utils/source_utils.py +2 -2
- zenml/utils/typed_model.py +5 -3
- zenml/utils/typing_utils.py +243 -0
- zenml/utils/yaml_utils.py +1 -1
- zenml/zen_server/auth.py +2 -2
- zenml/zen_server/cloud_utils.py +6 -6
- zenml/zen_server/deploy/base_provider.py +1 -1
- zenml/zen_server/deploy/deployment.py +6 -8
- zenml/zen_server/deploy/docker/docker_zen_server.py +3 -4
- zenml/zen_server/deploy/local/local_provider.py +0 -1
- zenml/zen_server/deploy/local/local_zen_server.py +6 -6
- zenml/zen_server/deploy/terraform/terraform_zen_server.py +4 -6
- zenml/zen_server/exceptions.py +4 -1
- zenml/zen_server/feature_gate/zenml_cloud_feature_gate.py +1 -1
- zenml/zen_server/pipeline_deployment/utils.py +48 -68
- zenml/zen_server/rbac/models.py +2 -5
- zenml/zen_server/rbac/utils.py +11 -14
- zenml/zen_server/routers/auth_endpoints.py +2 -2
- zenml/zen_server/routers/pipeline_builds_endpoints.py +1 -1
- zenml/zen_server/routers/runs_endpoints.py +1 -1
- zenml/zen_server/routers/secrets_endpoints.py +3 -2
- zenml/zen_server/routers/server_endpoints.py +1 -1
- zenml/zen_server/routers/steps_endpoints.py +1 -1
- zenml/zen_server/routers/workspaces_endpoints.py +1 -1
- zenml/zen_stores/base_zen_store.py +46 -9
- zenml/zen_stores/migrations/utils.py +42 -46
- zenml/zen_stores/migrations/versions/0701da9951a0_added_service_table.py +1 -1
- zenml/zen_stores/migrations/versions/1041bc644e0d_remove_secrets_manager.py +5 -3
- zenml/zen_stores/migrations/versions/10a907dad202_delete_mlmd_tables.py +1 -1
- zenml/zen_stores/migrations/versions/26b776ad583e_redesign_artifacts.py +8 -10
- zenml/zen_stores/migrations/versions/37835ce041d2_optimizing_database.py +3 -3
- zenml/zen_stores/migrations/versions/46506f72f0ed_add_server_settings.py +10 -12
- zenml/zen_stores/migrations/versions/5994f9ad0489_introduce_role_permissions.py +3 -2
- zenml/zen_stores/migrations/versions/6917bce75069_add_pipeline_run_unique_constraint.py +4 -4
- zenml/zen_stores/migrations/versions/728c6369cfaa_add_name_column_to_input_artifact_pk.py +3 -2
- zenml/zen_stores/migrations/versions/743ec82b1b3c_update_size_of_build_images.py +2 -2
- zenml/zen_stores/migrations/versions/7500f434b71c_remove_shared_columns.py +3 -2
- zenml/zen_stores/migrations/versions/7834208cc3f6_artifact_project_scoping.py +8 -7
- zenml/zen_stores/migrations/versions/7b651bf6822e_track_secrets_in_db.py +6 -4
- zenml/zen_stores/migrations/versions/7e4a481d17f7_add_identity_table.py +2 -2
- zenml/zen_stores/migrations/versions/7f603e583dd7_fixed_migration.py +1 -1
- zenml/zen_stores/migrations/versions/a39c4184c8ce_remove_secrets_manager_flavors.py +2 -2
- zenml/zen_stores/migrations/versions/a91762e6be36_artifact_version_table.py +4 -4
- zenml/zen_stores/migrations/versions/alembic_start.py +1 -1
- zenml/zen_stores/migrations/versions/fbd7f18ced1e_increase_step_run_field_lengths.py +4 -4
- zenml/zen_stores/rest_zen_store.py +109 -49
- zenml/zen_stores/schemas/api_key_schemas.py +1 -1
- zenml/zen_stores/schemas/artifact_schemas.py +8 -8
- zenml/zen_stores/schemas/artifact_visualization_schemas.py +3 -3
- zenml/zen_stores/schemas/code_repository_schemas.py +1 -1
- zenml/zen_stores/schemas/component_schemas.py +8 -3
- zenml/zen_stores/schemas/device_schemas.py +8 -6
- zenml/zen_stores/schemas/event_source_schemas.py +3 -4
- zenml/zen_stores/schemas/flavor_schemas.py +5 -3
- zenml/zen_stores/schemas/model_schemas.py +26 -1
- zenml/zen_stores/schemas/pipeline_build_schemas.py +1 -1
- zenml/zen_stores/schemas/pipeline_deployment_schemas.py +4 -4
- zenml/zen_stores/schemas/pipeline_run_schemas.py +6 -6
- zenml/zen_stores/schemas/pipeline_schemas.py +5 -2
- zenml/zen_stores/schemas/run_metadata_schemas.py +2 -2
- zenml/zen_stores/schemas/secret_schemas.py +8 -5
- zenml/zen_stores/schemas/server_settings_schemas.py +3 -1
- zenml/zen_stores/schemas/service_connector_schemas.py +1 -1
- zenml/zen_stores/schemas/service_schemas.py +11 -2
- zenml/zen_stores/schemas/stack_schemas.py +1 -1
- zenml/zen_stores/schemas/step_run_schemas.py +11 -11
- zenml/zen_stores/schemas/tag_schemas.py +6 -2
- zenml/zen_stores/schemas/trigger_schemas.py +2 -2
- zenml/zen_stores/schemas/user_schemas.py +2 -2
- zenml/zen_stores/schemas/workspace_schemas.py +3 -1
- zenml/zen_stores/secrets_stores/aws_secrets_store.py +19 -20
- zenml/zen_stores/secrets_stores/azure_secrets_store.py +17 -20
- zenml/zen_stores/secrets_stores/base_secrets_store.py +79 -12
- zenml/zen_stores/secrets_stores/gcp_secrets_store.py +17 -20
- zenml/zen_stores/secrets_stores/hashicorp_secrets_store.py +4 -8
- zenml/zen_stores/secrets_stores/service_connector_secrets_store.py +10 -7
- zenml/zen_stores/secrets_stores/sql_secrets_store.py +5 -6
- zenml/zen_stores/sql_zen_store.py +196 -120
- zenml/zen_stores/zen_store_interface.py +33 -0
- {zenml_nightly-0.58.2.dev20240615.dist-info → zenml_nightly-0.58.2.dev20240623.dist-info}/METADATA +9 -7
- {zenml_nightly-0.58.2.dev20240615.dist-info → zenml_nightly-0.58.2.dev20240623.dist-info}/RECORD +310 -307
- zenml/integrations/kubeflow/utils.py +0 -95
- zenml/models/v2/base/internal.py +0 -37
- zenml/models/v2/base/update.py +0 -44
- {zenml_nightly-0.58.2.dev20240615.dist-info → zenml_nightly-0.58.2.dev20240623.dist-info}/LICENSE +0 -0
- {zenml_nightly-0.58.2.dev20240615.dist-info → zenml_nightly-0.58.2.dev20240623.dist-info}/WHEEL +0 -0
- {zenml_nightly-0.58.2.dev20240615.dist-info → zenml_nightly-0.58.2.dev20240623.dist-info}/entry_points.txt +0 -0
zenml/models/__init__.py
CHANGED
@@ -20,11 +20,12 @@ from zenml.models.v2.base.base import (
|
|
20
20
|
BaseZenModel,
|
21
21
|
BaseRequest,
|
22
22
|
BaseResponse,
|
23
|
+
BaseUpdate,
|
23
24
|
BaseIdentifiedResponse,
|
24
25
|
BaseResponseBody,
|
25
26
|
BaseResponseMetadata,
|
26
27
|
BaseResponseResources,
|
27
|
-
BaseDatedResponseBody
|
28
|
+
BaseDatedResponseBody,
|
28
29
|
)
|
29
30
|
from zenml.models.v2.base.scoped import (
|
30
31
|
UserScopedRequest,
|
@@ -37,7 +38,8 @@ from zenml.models.v2.base.scoped import (
|
|
37
38
|
WorkspaceScopedResponse,
|
38
39
|
WorkspaceScopedResponseBody,
|
39
40
|
WorkspaceScopedResponseMetadata,
|
40
|
-
|
41
|
+
WorkspaceScopedResponseResources,
|
42
|
+
WorkspaceScopedTaggableFilter,
|
41
43
|
)
|
42
44
|
from zenml.models.v2.base.filter import (
|
43
45
|
BaseFilter,
|
@@ -82,6 +84,7 @@ from zenml.models.v2.core.artifact_version import (
|
|
82
84
|
ArtifactVersionResponseBody,
|
83
85
|
ArtifactVersionResponseMetadata,
|
84
86
|
ArtifactVersionUpdate,
|
87
|
+
LazyArtifactVersionResponse
|
85
88
|
)
|
86
89
|
from zenml.models.v2.core.artifact_visualization import (
|
87
90
|
ArtifactVisualizationRequest,
|
@@ -187,10 +190,12 @@ from zenml.models.v2.core.pipeline import (
|
|
187
190
|
PipelineResponse,
|
188
191
|
PipelineResponseBody,
|
189
192
|
PipelineResponseMetadata,
|
190
|
-
|
191
|
-
|
193
|
+
)
|
194
|
+
from zenml.models.v2.core.pipeline_namespace import (
|
192
195
|
PipelineNamespaceResponseBody,
|
193
196
|
PipelineNamespaceResponseMetadata,
|
197
|
+
PipelineNamespaceResponse,
|
198
|
+
PipelineNamespaceFilter,
|
194
199
|
)
|
195
200
|
from zenml.models.v2.core.pipeline_build import (
|
196
201
|
PipelineBuildBase,
|
@@ -219,6 +224,7 @@ from zenml.models.v2.core.pipeline_run import (
|
|
219
224
|
)
|
220
225
|
from zenml.models.v2.base.base_plugin_flavor import BasePluginFlavorResponse
|
221
226
|
from zenml.models.v2.core.run_metadata import (
|
227
|
+
LazyRunMetadataResponse,
|
222
228
|
RunMetadataRequest,
|
223
229
|
RunMetadataFilter,
|
224
230
|
RunMetadataResponse,
|
@@ -319,7 +325,7 @@ from zenml.models.v2.core.trigger import (
|
|
319
325
|
TriggerResponse,
|
320
326
|
TriggerResponseBody,
|
321
327
|
TriggerResponseMetadata,
|
322
|
-
TriggerResponseResources
|
328
|
+
TriggerResponseResources,
|
323
329
|
)
|
324
330
|
from zenml.models.v2.core.trigger_execution import (
|
325
331
|
TriggerExecutionRequest,
|
@@ -327,7 +333,7 @@ from zenml.models.v2.core.trigger_execution import (
|
|
327
333
|
TriggerExecutionResponse,
|
328
334
|
TriggerExecutionResponseBody,
|
329
335
|
TriggerExecutionResponseMetadata,
|
330
|
-
TriggerExecutionResponseResources
|
336
|
+
TriggerExecutionResponseResources,
|
331
337
|
)
|
332
338
|
from zenml.models.v2.core.event_source import (
|
333
339
|
EventSourceRequest,
|
@@ -336,7 +342,7 @@ from zenml.models.v2.core.event_source import (
|
|
336
342
|
EventSourceResponse,
|
337
343
|
EventSourceResponseBody,
|
338
344
|
EventSourceResponseMetadata,
|
339
|
-
EventSourceResponseResources
|
345
|
+
EventSourceResponseResources,
|
340
346
|
)
|
341
347
|
from zenml.models.v2.misc.user_auth import UserAuthModel
|
342
348
|
from zenml.models.v2.misc.build_item import BuildItem
|
@@ -375,203 +381,69 @@ from zenml.models.v2.core.server_settings import (
|
|
375
381
|
# ----------------------------- Forward References -----------------------------
|
376
382
|
|
377
383
|
# V2
|
378
|
-
APIKeyResponseBody.
|
379
|
-
|
380
|
-
)
|
381
|
-
|
382
|
-
|
383
|
-
)
|
384
|
-
|
385
|
-
|
386
|
-
)
|
387
|
-
|
388
|
-
|
389
|
-
|
390
|
-
|
391
|
-
)
|
392
|
-
|
393
|
-
|
394
|
-
)
|
395
|
-
|
396
|
-
|
397
|
-
)
|
398
|
-
|
399
|
-
|
400
|
-
)
|
401
|
-
|
402
|
-
|
403
|
-
)
|
404
|
-
|
405
|
-
|
406
|
-
|
407
|
-
)
|
408
|
-
|
409
|
-
|
410
|
-
)
|
411
|
-
|
412
|
-
|
413
|
-
)
|
414
|
-
|
415
|
-
|
416
|
-
)
|
417
|
-
|
418
|
-
|
419
|
-
)
|
420
|
-
|
421
|
-
|
422
|
-
)
|
423
|
-
|
424
|
-
|
425
|
-
)
|
426
|
-
|
427
|
-
|
428
|
-
)
|
429
|
-
|
430
|
-
|
431
|
-
)
|
432
|
-
|
433
|
-
|
434
|
-
|
435
|
-
)
|
436
|
-
ModelResponseMetadata.update_forward_refs(
|
437
|
-
WorkspaceResponse=WorkspaceResponse,
|
438
|
-
)
|
439
|
-
ModelVersionResponseBody.update_forward_refs(
|
440
|
-
UserResponse=UserResponse,
|
441
|
-
ModelResponse=ModelResponse,
|
442
|
-
RunMetadataResponse=RunMetadataResponse,
|
443
|
-
)
|
444
|
-
ModelVersionResponseMetadata.update_forward_refs(
|
445
|
-
WorkspaceResponse=WorkspaceResponse,
|
446
|
-
RunMetadataResponse=RunMetadataResponse,
|
447
|
-
)
|
448
|
-
ModelVersionResponseResources.update_forward_refs(
|
449
|
-
ServiceResponse=ServiceResponse,
|
450
|
-
)
|
451
|
-
ModelVersionArtifactResponseBody.update_forward_refs(
|
452
|
-
ArtifactVersionResponse=ArtifactVersionResponse,
|
453
|
-
)
|
454
|
-
ModelVersionPipelineRunResponseBody.update_forward_refs(
|
455
|
-
PipelineRunResponse=PipelineRunResponse
|
456
|
-
)
|
457
|
-
OAuthDeviceResponseBody.update_forward_refs(
|
458
|
-
UserResponse=UserResponse,
|
459
|
-
)
|
460
|
-
PipelineResponseBody.update_forward_refs(
|
461
|
-
UserResponse=UserResponse,
|
462
|
-
)
|
463
|
-
PipelineResponseMetadata.update_forward_refs(
|
464
|
-
WorkspaceResponse=WorkspaceResponse,
|
465
|
-
)
|
466
|
-
PipelineBuildBase.update_forward_refs(
|
467
|
-
BuildItem=BuildItem,
|
468
|
-
)
|
469
|
-
PipelineBuildResponseBody.update_forward_refs(
|
470
|
-
UserResponse=UserResponse,
|
471
|
-
)
|
472
|
-
PipelineBuildResponseMetadata.update_forward_refs(
|
473
|
-
WorkspaceResponse=WorkspaceResponse,
|
474
|
-
PipelineResponse=PipelineResponse,
|
475
|
-
StackResponse=StackResponse,
|
476
|
-
BuildItem=BuildItem,
|
477
|
-
)
|
478
|
-
PipelineDeploymentRequest.update_forward_refs(
|
479
|
-
CodeReferenceRequest=CodeReferenceRequest,
|
480
|
-
)
|
481
|
-
PipelineDeploymentResponseBody.update_forward_refs(
|
482
|
-
UserResponse=UserResponse,
|
483
|
-
)
|
484
|
-
PipelineDeploymentResponseMetadata.update_forward_refs(
|
485
|
-
WorkspaceResponse=WorkspaceResponse,
|
486
|
-
PipelineResponse=PipelineResponse,
|
487
|
-
StackResponse=StackResponse,
|
488
|
-
PipelineBuildResponse=PipelineBuildResponse,
|
489
|
-
ScheduleResponse=ScheduleResponse,
|
490
|
-
CodeReferenceResponse=CodeReferenceResponse,
|
491
|
-
)
|
492
|
-
PipelineDeploymentResponseResources.update_forward_refs(
|
493
|
-
TriggerResponse=TriggerResponse,
|
494
|
-
)
|
495
|
-
PipelineRunResponseBody.update_forward_refs(
|
496
|
-
UserResponse=UserResponse,
|
497
|
-
PipelineResponse=PipelineResponse,
|
498
|
-
StackResponse=StackResponse,
|
499
|
-
PipelineBuildResponse=PipelineBuildResponse,
|
500
|
-
ScheduleResponse=ScheduleResponse,
|
501
|
-
CodeReferenceResponse=CodeReferenceResponse,
|
502
|
-
TriggerExecutionResponse=TriggerExecutionResponse,
|
503
|
-
)
|
504
|
-
PipelineRunResponseMetadata.update_forward_refs(
|
505
|
-
WorkspaceResponse=WorkspaceResponse,
|
506
|
-
RunMetadataResponse=RunMetadataResponse,
|
507
|
-
StepRunResponse=StepRunResponse,
|
508
|
-
)
|
509
|
-
RunMetadataResponseBody.update_forward_refs(
|
510
|
-
UserResponse=UserResponse,
|
511
|
-
)
|
512
|
-
RunMetadataResponseMetadata.update_forward_refs(
|
513
|
-
WorkspaceResponse=WorkspaceResponse,
|
514
|
-
)
|
515
|
-
ScheduleResponseBody.update_forward_refs(
|
516
|
-
UserResponse=UserResponse,
|
517
|
-
)
|
518
|
-
ScheduleResponseMetadata.update_forward_refs(
|
519
|
-
WorkspaceResponse=WorkspaceResponse,
|
520
|
-
)
|
521
|
-
SecretResponseBody.update_forward_refs(
|
522
|
-
UserResponse=UserResponse,
|
523
|
-
)
|
524
|
-
SecretResponseMetadata.update_forward_refs(
|
525
|
-
WorkspaceResponse=WorkspaceResponse,
|
526
|
-
)
|
527
|
-
ServiceConnectorResponseBody.update_forward_refs(
|
528
|
-
UserResponse=UserResponse,
|
529
|
-
)
|
530
|
-
ServiceConnectorResponseMetadata.update_forward_refs(
|
531
|
-
ServiceConnectorTypeModel=ServiceConnectorTypeModel,
|
532
|
-
WorkspaceResponse=WorkspaceResponse,
|
533
|
-
ComponentResponse=ComponentResponse,
|
534
|
-
)
|
535
|
-
StackResponseBody.update_forward_refs(
|
536
|
-
UserResponse=UserResponse,
|
537
|
-
)
|
538
|
-
StackResponseMetadata.update_forward_refs(
|
539
|
-
ComponentResponse=ComponentResponse,
|
540
|
-
WorkspaceResponse=WorkspaceResponse,
|
541
|
-
)
|
542
|
-
StepRunRequest.update_forward_refs(
|
543
|
-
LogsRequest=LogsRequest,
|
544
|
-
)
|
545
|
-
StepRunResponseBody.update_forward_refs(
|
546
|
-
UserResponse=UserResponse,
|
547
|
-
ArtifactVersionResponse=ArtifactVersionResponse,
|
548
|
-
)
|
549
|
-
StepRunResponseMetadata.update_forward_refs(
|
550
|
-
WorkspaceResponse=WorkspaceResponse,
|
551
|
-
LogsResponse=LogsResponse,
|
552
|
-
RunMetadataResponse=RunMetadataResponse,
|
553
|
-
)
|
554
|
-
TriggerExecutionResponseResources.update_forward_refs(
|
555
|
-
TriggerResponse=TriggerResponse
|
556
|
-
)
|
557
|
-
TriggerResponseBody.update_forward_refs(
|
558
|
-
UserResponse=UserResponse,
|
559
|
-
)
|
560
|
-
TriggerResponseMetadata.update_forward_refs(
|
561
|
-
WorkspaceResponse=WorkspaceResponse,
|
562
|
-
)
|
563
|
-
TriggerResponseResources.update_forward_refs(
|
564
|
-
EventSourceResponse=EventSourceResponse,
|
565
|
-
)
|
566
|
-
TriggerResponseResources.update_forward_refs(
|
567
|
-
EventSourceResponse=EventSourceResponse,
|
568
|
-
TriggerExecutionResponse=TriggerExecutionResponse,
|
569
|
-
)
|
384
|
+
APIKeyResponseBody.model_rebuild()
|
385
|
+
ArtifactVersionRequest.model_rebuild()
|
386
|
+
ArtifactVersionResponseBody.model_rebuild()
|
387
|
+
ArtifactVersionResponseMetadata.model_rebuild()
|
388
|
+
CodeReferenceResponseBody.model_rebuild()
|
389
|
+
CodeRepositoryResponseBody.model_rebuild()
|
390
|
+
CodeRepositoryResponseMetadata.model_rebuild()
|
391
|
+
ComponentResponseBody.model_rebuild()
|
392
|
+
ComponentResponseMetadata.model_rebuild()
|
393
|
+
EventSourceResponseBody.model_rebuild()
|
394
|
+
EventSourceResponseMetadata.model_rebuild()
|
395
|
+
EventSourceResponseResources.model_rebuild()
|
396
|
+
FlavorResponseBody.model_rebuild()
|
397
|
+
FlavorResponseMetadata.model_rebuild()
|
398
|
+
LazyArtifactVersionResponse.model_rebuild()
|
399
|
+
LazyRunMetadataResponse.model_rebuild()
|
400
|
+
ModelResponseBody.model_rebuild()
|
401
|
+
ModelResponseMetadata.model_rebuild()
|
402
|
+
ModelVersionResponseBody.model_rebuild()
|
403
|
+
ModelVersionResponseMetadata.model_rebuild()
|
404
|
+
ModelVersionResponseResources.model_rebuild()
|
405
|
+
ModelVersionArtifactResponseBody.model_rebuild()
|
406
|
+
ModelVersionPipelineRunResponseBody.model_rebuild()
|
407
|
+
OAuthDeviceResponseBody.model_rebuild()
|
408
|
+
PipelineResponseBody.model_rebuild()
|
409
|
+
PipelineResponseMetadata.model_rebuild()
|
410
|
+
PipelineBuildBase.model_rebuild()
|
411
|
+
PipelineBuildResponseBody.model_rebuild()
|
412
|
+
PipelineBuildResponseMetadata.model_rebuild()
|
413
|
+
PipelineDeploymentRequest.model_rebuild()
|
414
|
+
PipelineDeploymentResponseBody.model_rebuild()
|
415
|
+
PipelineDeploymentResponseMetadata.model_rebuild()
|
416
|
+
PipelineDeploymentResponseResources.model_rebuild()
|
417
|
+
PipelineRunResponseBody.model_rebuild()
|
418
|
+
PipelineRunResponseMetadata.model_rebuild()
|
419
|
+
RunMetadataResponseBody.model_rebuild()
|
420
|
+
RunMetadataResponseMetadata.model_rebuild()
|
421
|
+
ScheduleResponseBody.model_rebuild()
|
422
|
+
ScheduleResponseMetadata.model_rebuild()
|
423
|
+
SecretResponseBody.model_rebuild()
|
424
|
+
SecretResponseMetadata.model_rebuild()
|
425
|
+
ServiceResponseBody.model_rebuild()
|
426
|
+
ServiceResponseMetadata.model_rebuild()
|
427
|
+
ServiceResponseResources.model_rebuild()
|
428
|
+
ServiceConnectorResponseBody.model_rebuild()
|
429
|
+
ServiceConnectorResponseMetadata.model_rebuild()
|
430
|
+
StackResponseBody.model_rebuild()
|
431
|
+
StackResponseMetadata.model_rebuild()
|
432
|
+
StepRunRequest.model_rebuild()
|
433
|
+
StepRunResponseBody.model_rebuild()
|
434
|
+
StepRunResponseMetadata.model_rebuild()
|
435
|
+
TriggerExecutionResponseResources.model_rebuild()
|
436
|
+
TriggerResponseBody.model_rebuild()
|
437
|
+
TriggerResponseMetadata.model_rebuild()
|
438
|
+
TriggerResponseResources.model_rebuild()
|
439
|
+
TriggerResponseResources.model_rebuild()
|
440
|
+
|
570
441
|
|
571
442
|
__all__ = [
|
572
443
|
# V2 Base
|
573
444
|
"BaseRequest",
|
574
445
|
"BaseResponse",
|
446
|
+
"BaseUpdate",
|
575
447
|
"BaseIdentifiedResponse",
|
576
448
|
"BaseResponseBody",
|
577
449
|
"BaseResponseMetadata",
|
@@ -589,6 +461,7 @@ __all__ = [
|
|
589
461
|
"WorkspaceScopedResponse",
|
590
462
|
"WorkspaceScopedResponseBody",
|
591
463
|
"WorkspaceScopedResponseMetadata",
|
464
|
+
"WorkspaceScopedResponseResources",
|
592
465
|
"WorkspaceScopedTaggableFilter",
|
593
466
|
"BaseFilter",
|
594
467
|
"StrFilter",
|
@@ -732,6 +605,13 @@ __all__ = [
|
|
732
605
|
"SecretResponseBody",
|
733
606
|
"SecretResponseMetadata",
|
734
607
|
"SecretUpdate",
|
608
|
+
"ServiceResponse",
|
609
|
+
"ServiceResponseBody",
|
610
|
+
"ServiceResponseMetadata",
|
611
|
+
"ServiceUpdate",
|
612
|
+
"ServiceFilter",
|
613
|
+
"ServiceRequest",
|
614
|
+
"ServiceResponseResources",
|
735
615
|
"ServerActivationRequest",
|
736
616
|
"ServerSettingsResponse",
|
737
617
|
"ServerSettingsResponseResources",
|
@@ -802,13 +682,6 @@ __all__ = [
|
|
802
682
|
"WorkspaceResponse",
|
803
683
|
"WorkspaceResponseBody",
|
804
684
|
"WorkspaceResponseMetadata",
|
805
|
-
"ServiceResponse",
|
806
|
-
"ServiceResponseBody",
|
807
|
-
"ServiceResponseMetadata",
|
808
|
-
"ServiceUpdate",
|
809
|
-
"ServiceFilter",
|
810
|
-
"ServiceRequest",
|
811
|
-
"ServiceResponseResources",
|
812
685
|
# V2 Misc
|
813
686
|
"AuthenticationMethodModel",
|
814
687
|
"ServiceConnectorResourcesModel",
|
zenml/models/v2/base/base.py
CHANGED
@@ -17,8 +17,7 @@ from datetime import datetime
|
|
17
17
|
from typing import Any, Dict, Generic, Optional, TypeVar
|
18
18
|
from uuid import UUID
|
19
19
|
|
20
|
-
from pydantic import
|
21
|
-
from pydantic.generics import GenericModel
|
20
|
+
from pydantic import ConfigDict, Field
|
22
21
|
|
23
22
|
from zenml.analytics.models import AnalyticsTrackedModelMixin
|
24
23
|
from zenml.enums import ResponseUpdateStrategy
|
@@ -35,26 +34,16 @@ class BaseZenModel(YAMLSerializationMixin, AnalyticsTrackedModelMixin):
|
|
35
34
|
"""Base model class for all ZenML models.
|
36
35
|
|
37
36
|
This class is used as a base class for all ZenML models. It provides
|
38
|
-
functionality for tracking analytics events
|
39
|
-
SecretStr values.
|
37
|
+
functionality for tracking analytics events.
|
40
38
|
"""
|
41
39
|
|
42
|
-
|
43
|
-
"""Pydantic configuration class."""
|
44
|
-
|
45
|
-
# This is needed to allow the REST client and server to unpack SecretStr
|
46
|
-
# values correctly.
|
47
|
-
json_encoders = {
|
48
|
-
SecretStr: lambda v: v.get_secret_value()
|
49
|
-
if v is not None
|
50
|
-
else None
|
51
|
-
}
|
52
|
-
|
40
|
+
model_config = ConfigDict(
|
53
41
|
# Ignore extras on all models to support forwards and backwards
|
54
42
|
# compatibility (e.g. new fields in newer versions of ZenML servers
|
55
43
|
# are allowed to be passed to older versions of ZenML clients and
|
56
44
|
# vice versa but will be ignored).
|
57
|
-
extra
|
45
|
+
extra="ignore",
|
46
|
+
)
|
58
47
|
|
59
48
|
|
60
49
|
# -------------------- Request Model --------------------
|
@@ -67,6 +56,21 @@ class BaseRequest(BaseZenModel):
|
|
67
56
|
"""
|
68
57
|
|
69
58
|
|
59
|
+
# -------------------- Update Model --------------------
|
60
|
+
|
61
|
+
|
62
|
+
class BaseUpdate(BaseZenModel):
|
63
|
+
"""Base update model.
|
64
|
+
|
65
|
+
Used as a base class for all update models.
|
66
|
+
"""
|
67
|
+
|
68
|
+
model_config = ConfigDict(
|
69
|
+
# Ignore extras on all update models.
|
70
|
+
extra="ignore",
|
71
|
+
)
|
72
|
+
|
73
|
+
|
70
74
|
# -------------------- Response Model --------------------
|
71
75
|
|
72
76
|
|
@@ -87,10 +91,7 @@ class BaseResponseResources(BaseZenModel):
|
|
87
91
|
Used as a base class for all resource models associated with responses.
|
88
92
|
"""
|
89
93
|
|
90
|
-
|
91
|
-
"""Allows additional resources to be added."""
|
92
|
-
|
93
|
-
extra = Extra.allow
|
94
|
+
model_config = ConfigDict(extra="allow")
|
94
95
|
|
95
96
|
|
96
97
|
AnyBody = TypeVar("AnyBody", bound=BaseResponseBody)
|
@@ -98,9 +99,7 @@ AnyMetadata = TypeVar("AnyMetadata", bound=BaseResponseMetadata)
|
|
98
99
|
AnyResources = TypeVar("AnyResources", bound=BaseResponseResources)
|
99
100
|
|
100
101
|
|
101
|
-
class BaseResponse(
|
102
|
-
GenericModel, Generic[AnyBody, AnyMetadata, AnyResources], BaseZenModel
|
103
|
-
):
|
102
|
+
class BaseResponse(BaseZenModel, Generic[AnyBody, AnyMetadata, AnyResources]):
|
104
103
|
"""Base domain model for all responses."""
|
105
104
|
|
106
105
|
# Body and metadata pair
|
@@ -140,7 +139,7 @@ class BaseResponse(
|
|
140
139
|
)
|
141
140
|
|
142
141
|
# Check if the name has changed
|
143
|
-
if "name" in self.
|
142
|
+
if "name" in self.model_fields:
|
144
143
|
original_name = getattr(self, "name")
|
145
144
|
hydrated_name = getattr(hydrated_model, "name")
|
146
145
|
|
@@ -178,7 +177,7 @@ class BaseResponse(
|
|
178
177
|
)
|
179
178
|
|
180
179
|
# Check all the fields in the body
|
181
|
-
for field in self.get_body().
|
180
|
+
for field in self.get_body().model_fields:
|
182
181
|
original_value = getattr(self.get_body(), field)
|
183
182
|
hydrated_value = getattr(hydrated_model.get_body(), field)
|
184
183
|
|
@@ -253,9 +252,21 @@ class BaseResponse(
|
|
253
252
|
"""
|
254
253
|
if self.metadata is None:
|
255
254
|
# If the metadata is not there, check the class first.
|
256
|
-
|
255
|
+
metadata_annotation = self.model_fields["metadata"].annotation
|
256
|
+
assert metadata_annotation is not None, (
|
257
|
+
"For each response model, an annotated metadata"
|
258
|
+
"field should exist."
|
259
|
+
)
|
260
|
+
|
261
|
+
# metadata is defined as:
|
262
|
+
# metadata: Optional[....ResponseMetadata] = Field(default=None)
|
263
|
+
# We need to find the actual class inside the Optional annotation.
|
264
|
+
from zenml.utils.typing_utils import get_args
|
265
|
+
|
266
|
+
metadata_type = get_args(metadata_annotation)[0]
|
267
|
+
assert issubclass(metadata_type, BaseResponseMetadata)
|
257
268
|
|
258
|
-
if len(metadata_type.
|
269
|
+
if len(metadata_type.model_fields):
|
259
270
|
# If the metadata class defines any fields, fetch the metadata
|
260
271
|
# through the hydrated version.
|
261
272
|
hydrated_version = self.get_hydrated_version()
|
@@ -281,9 +292,21 @@ class BaseResponse(
|
|
281
292
|
"""
|
282
293
|
if self.resources is None:
|
283
294
|
# If the resources are not there, check the class first.
|
284
|
-
|
295
|
+
resources_annotation = self.model_fields["resources"].annotation
|
296
|
+
assert resources_annotation is not None, (
|
297
|
+
"For each response model, an annotated resources"
|
298
|
+
"field should exist."
|
299
|
+
)
|
300
|
+
|
301
|
+
# metadata is defined as:
|
302
|
+
# metadata: Optional[....ResponseMetadata] = Field(default=None)
|
303
|
+
# We need to find the actual class inside the Optional annotation.
|
304
|
+
from zenml.utils.typing_utils import get_args
|
305
|
+
|
306
|
+
resources_type = get_args(resources_annotation)[0]
|
307
|
+
assert issubclass(resources_type, BaseResponseResources)
|
285
308
|
|
286
|
-
if len(resources_type.
|
309
|
+
if len(resources_type.model_fields):
|
287
310
|
# If the resources class defines any fields, fetch the resources
|
288
311
|
# through the hydrated version.
|
289
312
|
hydrated_version = self.get_hydrated_version()
|
@@ -292,7 +315,7 @@ class BaseResponse(
|
|
292
315
|
else:
|
293
316
|
# Otherwise, use the resources class to create an empty
|
294
317
|
# resources object.
|
295
|
-
self.
|
318
|
+
self.resources = resources_type()
|
296
319
|
|
297
320
|
if self.resources is None:
|
298
321
|
raise RuntimeError(
|
@@ -327,17 +350,7 @@ class BaseIdentifiedResponse(
|
|
327
350
|
"""Base domain model for resources with DB representation."""
|
328
351
|
|
329
352
|
id: UUID = Field(title="The unique resource id.")
|
330
|
-
|
331
|
-
title="The body of the resource, "
|
332
|
-
"containing at the minimum "
|
333
|
-
"creation and updated fields."
|
334
|
-
)
|
335
|
-
metadata: Optional["AnyMetadata"] = Field(
|
336
|
-
title="The metadata related to this resource."
|
337
|
-
)
|
338
|
-
resources: Optional["AnyResources"] = Field(
|
339
|
-
title="The resources related to this resource."
|
340
|
-
)
|
353
|
+
|
341
354
|
permission_denied: bool = False
|
342
355
|
|
343
356
|
# Helper functions
|
@@ -15,7 +15,7 @@
|
|
15
15
|
|
16
16
|
from typing import Generic, TypeVar
|
17
17
|
|
18
|
-
from pydantic import
|
18
|
+
from pydantic import ConfigDict, Field
|
19
19
|
|
20
20
|
from zenml.enums import PluginSubType, PluginType
|
21
21
|
from zenml.models.v2.base.base import (
|
@@ -56,11 +56,7 @@ class BasePluginFlavorResponse(
|
|
56
56
|
name: str = Field(title="Name of the flavor.")
|
57
57
|
type: PluginType = Field(title="Type of the plugin.")
|
58
58
|
subtype: PluginSubType = Field(title="Subtype of the plugin.")
|
59
|
-
|
60
|
-
class Config:
|
61
|
-
"""Configuration for base plugin flavor response."""
|
62
|
-
|
63
|
-
extra = Extra.ignore
|
59
|
+
model_config = ConfigDict(extra="ignore")
|
64
60
|
|
65
61
|
def get_hydrated_version(
|
66
62
|
self,
|