Skip to content

Commit 92c2c4b

Browse files
[Internal] Extend project creation with a customizable config that can be used in hooks
Review feedback (part 2)
1 parent 639b861 commit 92c2c4b

2 files changed

Lines changed: 14 additions & 10 deletions

File tree

src/dstack/_internal/core/models/projects.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,3 +26,11 @@ class Project(CoreModel):
2626
backends: List[BackendInfo]
2727
members: List[Member]
2828
is_public: bool = False
29+
30+
31+
class ProjectHookConfig(CoreModel):
32+
"""
33+
This class can be inherited to extend the project creation configuration passed to the hooks.
34+
"""
35+
36+
pass

src/dstack/_internal/server/services/projects.py

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,12 @@
1313
)
1414
from dstack._internal.core.backends.models import BackendInfo
1515
from dstack._internal.core.errors import ForbiddenError, ResourceExistsError, ServerClientError
16-
from dstack._internal.core.models.common import CoreModel
17-
from dstack._internal.core.models.projects import Member, MemberPermissions, Project
16+
from dstack._internal.core.models.projects import (
17+
Member,
18+
MemberPermissions,
19+
Project,
20+
ProjectHookConfig,
21+
)
1822
from dstack._internal.core.models.runs import RunStatus
1923
from dstack._internal.core.models.users import GlobalRole, ProjectRole
2024
from dstack._internal.server.models import (
@@ -116,14 +120,6 @@ async def get_project_by_name(
116120
return project_model_to_project(project_model)
117121

118122

119-
class ProjectHookConfig(CoreModel):
120-
"""
121-
This class can be inherited to extend the project creation configuration passed to the hooks.
122-
"""
123-
124-
pass
125-
126-
127123
async def create_project(
128124
session: AsyncSession,
129125
user: UserModel,

0 commit comments

Comments
 (0)