Skip to content

Commit 9084895

Browse files
committed
applies everywhere
1 parent b20528b commit 9084895

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+256
-210
lines changed

packages/postgres-database/src/simcore_postgres_database/models/_common.py

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,15 @@
55
from ..constants import DECIMAL_PLACES
66

77

8-
class ReferentialAction:
9-
# SEE https://docs.sqlalchemy.org/en/20/orm/cascades.html
10-
CASCADE = "CASCADE"
11-
SET_NULL = "SET NULL"
12-
SET_DEFAULT = "SET DEFAULT"
13-
RESTRICT = "RESTRICT"
14-
NO_ACTION = "NO ACTION"
8+
class RefActions:
9+
"""Referential actions for `ON UPDATE`, `ON DELETE`"""
10+
11+
# SEE https://docs.sqlalchemy.org/en/20/core/constraints.html#on-update-on-delete
12+
CASCADE: Final[str] = "CASCADE"
13+
SET_NULL: Final[str] = "SET NULL"
14+
SET_DEFAULT: Final[str] = "SET DEFAULT"
15+
RESTRICT: Final[str] = "RESTRICT"
16+
NO_ACTION: Final[str] = "NO ACTION"
1517

1618

1719
def column_created_datetime(*, timezone: bool = True) -> sa.Column:
@@ -43,8 +45,8 @@ def column_created_by_user(
4345
sa.Integer,
4446
sa.ForeignKey(
4547
users_table.c.id,
46-
onupdate=ReferentialAction.CASCADE,
47-
ondelete=ReferentialAction.SET_NULL,
48+
onupdate=RefActions.CASCADE,
49+
ondelete=RefActions.SET_NULL,
4850
),
4951
nullable=not required,
5052
doc="Who created this row at `created`",
@@ -59,8 +61,8 @@ def column_modified_by_user(
5961
sa.Integer,
6062
sa.ForeignKey(
6163
users_table.c.id,
62-
onupdate=ReferentialAction.CASCADE,
63-
ondelete=ReferentialAction.SET_NULL,
64+
onupdate=RefActions.CASCADE,
65+
ondelete=RefActions.SET_NULL,
6466
),
6567
nullable=not required,
6668
doc="Who modified this row at `modified`",
@@ -83,8 +85,8 @@ def column_trashed_by_user(resource_name: str, users_table: sa.Table) -> sa.Colu
8385
sa.BigInteger,
8486
sa.ForeignKey(
8587
users_table.c.id,
86-
onupdate=ReferentialAction.CASCADE,
87-
ondelete=ReferentialAction.SET_NULL,
88+
onupdate=RefActions.CASCADE,
89+
ondelete=RefActions.SET_NULL,
8890
name=f"fk_{resource_name}_trashed_by_user_id",
8991
),
9092
nullable=True,

packages/postgres-database/src/simcore_postgres_database/models/api_keys.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
import sqlalchemy as sa
1414
from sqlalchemy.sql import func
1515

16+
from ._common import RefActions
1617
from .base import metadata
1718
from .users import users
1819

@@ -35,7 +36,7 @@
3536
sa.Column(
3637
"user_id",
3738
sa.BigInteger(),
38-
sa.ForeignKey(users.c.id, ondelete="CASCADE"),
39+
sa.ForeignKey(users.c.id, ondelete=RefActions.CASCADE),
3940
nullable=False,
4041
doc="Identified user",
4142
),
@@ -44,8 +45,8 @@
4445
sa.String,
4546
sa.ForeignKey(
4647
"products.name",
47-
onupdate="CASCADE",
48-
ondelete="CASCADE",
48+
onupdate=RefActions.CASCADE,
49+
ondelete=RefActions.CASCADE,
4950
name="fk_api_keys_product_name",
5051
),
5152
nullable=False,

packages/postgres-database/src/simcore_postgres_database/models/classifiers.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
from sqlalchemy.dialects.postgresql import JSONB
1212
from sqlalchemy.sql import func
1313

14+
from ._common import RefActions
1415
from .base import metadata
1516

1617
group_classifiers = sa.Table(
@@ -32,8 +33,8 @@
3233
sa.ForeignKey(
3334
"groups.gid",
3435
name="fk_group_classifiers_gid_to_groups_gid",
35-
onupdate="CASCADE",
36-
ondelete="CASCADE",
36+
onupdate=RefActions.CASCADE,
37+
ondelete=RefActions.CASCADE,
3738
),
3839
unique=True, # Every Group can ONLY have one set of classifiers
3940
),

packages/postgres-database/src/simcore_postgres_database/models/cluster_to_groups.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import sqlalchemy as sa
22
from sqlalchemy.sql import expression, func
33

4+
from ._common import RefActions
45
from .base import metadata
56
from .clusters import clusters
67
from .groups import groups
@@ -14,8 +15,8 @@
1415
sa.ForeignKey(
1516
clusters.c.id,
1617
name="fk_cluster_to_groups_id_clusters",
17-
onupdate="CASCADE",
18-
ondelete="CASCADE",
18+
onupdate=RefActions.CASCADE,
19+
ondelete=RefActions.CASCADE,
1920
),
2021
doc="Cluster unique ID",
2122
),
@@ -25,8 +26,8 @@
2526
sa.ForeignKey(
2627
groups.c.gid,
2728
name="fk_cluster_to_groups_gid_groups",
28-
onupdate="CASCADE",
29-
ondelete="CASCADE",
29+
onupdate=RefActions.CASCADE,
30+
ondelete=RefActions.CASCADE,
3031
),
3132
doc="Group unique IDentifier",
3233
),

packages/postgres-database/src/simcore_postgres_database/models/clusters.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
from sqlalchemy.dialects.postgresql import JSONB
55
from sqlalchemy.sql import func
66

7+
from ._common import RefActions
78
from .base import metadata
89

910

@@ -36,8 +37,8 @@ class ClusterType(Enum):
3637
sa.ForeignKey(
3738
"groups.gid",
3839
name="fk_clusters_gid_groups",
39-
onupdate="CASCADE",
40-
ondelete="RESTRICT",
40+
onupdate=RefActions.CASCADE,
41+
ondelete=RefActions.RESTRICT,
4142
),
4243
nullable=False,
4344
doc="Identifier of the group that owns this cluster",

packages/postgres-database/src/simcore_postgres_database/models/comp_runs.py

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
from sqlalchemy.dialects.postgresql import JSONB
66
from sqlalchemy.sql import func
77

8+
from ._common import RefActions
89
from .base import metadata
910
from .comp_pipeline import StateType
1011

@@ -26,8 +27,8 @@
2627
sa.ForeignKey(
2728
"projects.uuid",
2829
name="fk_comp_runs_project_uuid_projects",
29-
onupdate="CASCADE",
30-
ondelete="CASCADE",
30+
onupdate=RefActions.CASCADE,
31+
ondelete=RefActions.CASCADE,
3132
),
3233
nullable=False,
3334
doc="The project uuid with which the run entry is associated",
@@ -38,8 +39,8 @@
3839
sa.ForeignKey(
3940
"users.id",
4041
name="fk_comp_runs_user_id_users",
41-
onupdate="CASCADE",
42-
ondelete="CASCADE",
42+
onupdate=RefActions.CASCADE,
43+
ondelete=RefActions.CASCADE,
4344
),
4445
nullable=False,
4546
doc="The user id with which the run entry is associated",
@@ -50,8 +51,8 @@
5051
sa.ForeignKey(
5152
"clusters.id",
5253
name="fk_comp_runs_cluster_id_clusters",
53-
onupdate="CASCADE",
54-
ondelete="SET NULL",
54+
onupdate=RefActions.CASCADE,
55+
ondelete=RefActions.SET_NULL,
5556
),
5657
nullable=True,
5758
doc="The cluster id on which the run entry is associated, if NULL or 0 uses the default",

packages/postgres-database/src/simcore_postgres_database/models/confirmations.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99

1010
import sqlalchemy as sa
1111

12+
from ._common import RefActions
1213
from .base import metadata
1314
from .users import users
1415

@@ -57,6 +58,9 @@ class ConfirmationAction(enum.Enum):
5758
# constraints ----------------
5859
sa.PrimaryKeyConstraint("code", name="confirmation_code"),
5960
sa.ForeignKeyConstraint(
60-
["user_id"], [users.c.id], name="user_confirmation_fkey", ondelete="CASCADE"
61+
["user_id"],
62+
[users.c.id],
63+
name="user_confirmation_fkey",
64+
ondelete=RefActions.CASCADE,
6165
),
6266
)

packages/postgres-database/src/simcore_postgres_database/models/folders_v2.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import sqlalchemy as sa
22
from sqlalchemy.sql import expression
33

4-
from ._common import column_created_datetime, column_modified_datetime
4+
from ._common import RefActions, column_created_datetime, column_modified_datetime
55
from .base import metadata
66
from .workspaces import workspaces
77

@@ -35,8 +35,8 @@
3535
sa.String,
3636
sa.ForeignKey(
3737
"products.name",
38-
onupdate="CASCADE",
39-
ondelete="CASCADE",
38+
onupdate=RefActions.CASCADE,
39+
ondelete=RefActions.CASCADE,
4040
name="fk_new_folders_to_products_name",
4141
),
4242
nullable=False,
@@ -46,8 +46,8 @@
4646
sa.BigInteger,
4747
sa.ForeignKey(
4848
"users.id",
49-
onupdate="CASCADE",
50-
ondelete="CASCADE",
49+
onupdate=RefActions.CASCADE,
50+
ondelete=RefActions.CASCADE,
5151
name="fk_folders_to_user_id",
5252
),
5353
nullable=True,
@@ -57,8 +57,8 @@
5757
sa.BigInteger,
5858
sa.ForeignKey(
5959
workspaces.c.workspace_id,
60-
onupdate="CASCADE",
61-
ondelete="CASCADE",
60+
onupdate=RefActions.CASCADE,
61+
ondelete=RefActions.CASCADE,
6262
name="fk_folders_to_workspace_id",
6363
),
6464
nullable=True,
@@ -69,7 +69,7 @@
6969
sa.ForeignKey(
7070
"groups.gid",
7171
name="fk_new_folders_to_groups_gid",
72-
ondelete="SET NULL",
72+
ondelete=RefActions.SET_NULL,
7373
),
7474
nullable=True,
7575
),

packages/postgres-database/src/simcore_postgres_database/models/groups.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
from sqlalchemy.dialects.postgresql import JSONB
1111
from sqlalchemy.sql import func
1212

13+
from ._common import RefActions
1314
from .base import metadata
1415

1516

@@ -86,8 +87,8 @@ class GroupType(enum.Enum):
8687
sa.ForeignKey(
8788
"users.id",
8889
name="fk_user_to_groups_id_users",
89-
onupdate="CASCADE",
90-
ondelete="CASCADE",
90+
onupdate=RefActions.CASCADE,
91+
ondelete=RefActions.CASCADE,
9192
),
9293
doc="User unique IDentifier",
9394
),
@@ -97,8 +98,8 @@ class GroupType(enum.Enum):
9798
sa.ForeignKey(
9899
"groups.gid",
99100
name="fk_user_to_groups_gid_groups",
100-
onupdate="CASCADE",
101-
ondelete="CASCADE",
101+
onupdate=RefActions.CASCADE,
102+
ondelete=RefActions.CASCADE,
102103
),
103104
doc="Group unique IDentifier",
104105
),

packages/postgres-database/src/simcore_postgres_database/models/groups_extra_properties.py

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,19 @@
11
import sqlalchemy as sa
22

3-
from ._common import column_created_datetime, column_modified_datetime
3+
from ._common import RefActions, column_created_datetime, column_modified_datetime
44
from .base import metadata
55

6-
#
7-
# groups_extra_properties: Maps internet access permissions to groups
8-
#
96
groups_extra_properties = sa.Table(
107
"groups_extra_properties",
8+
# groups_extra_properties: Maps internet access permissions to groups
119
metadata,
1210
sa.Column(
1311
"group_id",
1412
sa.BigInteger,
1513
sa.ForeignKey(
1614
"groups.gid",
17-
onupdate="CASCADE",
18-
ondelete="CASCADE",
15+
onupdate=RefActions.CASCADE,
16+
ondelete=RefActions.CASCADE,
1917
name="fk_groups_extra_properties_to_group_group_id",
2018
),
2119
nullable=False,
@@ -26,8 +24,8 @@
2624
sa.VARCHAR,
2725
sa.ForeignKey(
2826
"products.name",
29-
onupdate="CASCADE",
30-
ondelete="CASCADE",
27+
onupdate=RefActions.CASCADE,
28+
ondelete=RefActions.CASCADE,
3129
name="fk_groups_extra_properties_to_products_name",
3230
),
3331
nullable=False,

0 commit comments

Comments
 (0)