@@ -1155,19 +1155,7 @@ def _initialize(self) -> None:
1155
1155
1156
1156
def _initialize_database (self ) -> None :
1157
1157
"""Initialize the database if not already initialized."""
1158
- # When running in a Pro ZenML server, the default project is not
1159
- # created on database initialization but on server onboarding.
1160
- create_default_project = True
1161
- if ENV_ZENML_SERVER in os .environ :
1162
- from zenml .config .server_config import ServerConfiguration
1163
-
1164
- if (
1165
- ServerConfiguration .get_server_config ().deployment_type
1166
- == ServerDeploymentType .CLOUD
1167
- ):
1168
- create_default_project = False
1169
-
1170
- if create_default_project :
1158
+ if self ._default_project_enabled :
1171
1159
# Make sure the default project exists
1172
1160
self ._get_or_create_default_project ()
1173
1161
# Make sure the default stack exists
@@ -9440,7 +9428,8 @@ def update_project(
9440
9428
session = session ,
9441
9429
)
9442
9430
if (
9443
- existing_project .name == self ._default_project_name
9431
+ self ._default_project_enabled
9432
+ and existing_project .name == self ._default_project_name
9444
9433
and "name" in project_update .model_fields_set
9445
9434
and project_update .name != existing_project .name
9446
9435
):
@@ -9481,7 +9470,10 @@ def delete_project(self, project_name_or_id: Union[str, UUID]) -> None:
9481
9470
schema_class = ProjectSchema ,
9482
9471
session = session ,
9483
9472
)
9484
- if project .name == self ._default_project_name :
9473
+ if (
9474
+ self ._default_project_enabled
9475
+ and project .name == self ._default_project_name
9476
+ ):
9485
9477
raise IllegalOperationError (
9486
9478
"The default project cannot be deleted."
9487
9479
)
@@ -9542,6 +9534,27 @@ def _get_or_create_default_project(self) -> ProjectResponse:
9542
9534
ProjectRequest (name = default_project_name )
9543
9535
)
9544
9536
9537
+ @property
9538
+ def _default_project_enabled (self ) -> bool :
9539
+ """Check if the default project is enabled.
9540
+
9541
+ When running in a Pro ZenML server, the default project is not enabled.
9542
+
9543
+ Returns:
9544
+ True if the default project is enabled, False otherwise.
9545
+ """
9546
+ default_project_enabled = True
9547
+ if ENV_ZENML_SERVER in os .environ :
9548
+ from zenml .config .server_config import ServerConfiguration
9549
+
9550
+ if (
9551
+ ServerConfiguration .get_server_config ().deployment_type
9552
+ == ServerDeploymentType .CLOUD
9553
+ ):
9554
+ default_project_enabled = False
9555
+
9556
+ return default_project_enabled
9557
+
9545
9558
# =======================
9546
9559
# Internal helper methods
9547
9560
# =======================
@@ -9915,7 +9928,7 @@ def _set_filter_project_id(
9915
9928
session = session ,
9916
9929
)
9917
9930
project_id = project .id
9918
- else :
9931
+ elif self . _default_project_enabled :
9919
9932
# Use the default project as a last resort.
9920
9933
try :
9921
9934
project = self ._get_schema_by_name_or_id (
@@ -9926,6 +9939,8 @@ def _set_filter_project_id(
9926
9939
project_id = project .id
9927
9940
except KeyError :
9928
9941
raise ValueError ("Project scope missing from the filter" )
9942
+ else :
9943
+ raise ValueError ("Project scope missing from the filter" )
9929
9944
9930
9945
filter_model .project = project_id
9931
9946
0 commit comments