fractal-server 2.13.0__py3-none-any.whl → 2.14.0a0__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.
- fractal_server/__init__.py +1 -1
- fractal_server/app/history/__init__.py +4 -0
- fractal_server/app/history/image_updates.py +142 -0
- fractal_server/app/history/status_enum.py +16 -0
- fractal_server/app/models/v2/__init__.py +9 -1
- fractal_server/app/models/v2/accounting.py +35 -0
- fractal_server/app/models/v2/history.py +53 -0
- fractal_server/app/routes/admin/v2/__init__.py +4 -0
- fractal_server/app/routes/admin/v2/accounting.py +108 -0
- fractal_server/app/routes/admin/v2/impersonate.py +35 -0
- fractal_server/app/routes/admin/v2/job.py +5 -13
- fractal_server/app/routes/admin/v2/task_group.py +4 -12
- fractal_server/app/routes/api/v2/__init__.py +2 -2
- fractal_server/app/routes/api/v2/_aux_functions.py +78 -0
- fractal_server/app/routes/api/v2/_aux_functions_task_lifecycle.py +3 -3
- fractal_server/app/routes/api/v2/dataset.py +12 -9
- fractal_server/app/routes/api/v2/history.py +247 -0
- fractal_server/app/routes/api/v2/submit.py +1 -0
- fractal_server/app/routes/api/v2/task_group.py +2 -5
- fractal_server/app/routes/api/v2/workflow.py +18 -3
- fractal_server/app/routes/api/v2/workflowtask.py +22 -0
- fractal_server/app/routes/aux/__init__.py +0 -20
- fractal_server/app/runner/executors/base_runner.py +114 -0
- fractal_server/app/runner/{v2/_local → executors/local}/_local_config.py +3 -3
- fractal_server/app/runner/executors/local/_submit_setup.py +54 -0
- fractal_server/app/runner/executors/local/runner.py +200 -0
- fractal_server/app/runner/executors/{slurm → slurm_common}/_batching.py +1 -1
- fractal_server/app/runner/executors/{slurm → slurm_common}/_slurm_config.py +3 -3
- fractal_server/app/runner/{v2/_slurm_ssh → executors/slurm_common}/_submit_setup.py +13 -12
- fractal_server/app/runner/{v2/_slurm_common → executors/slurm_common}/get_slurm_config.py +9 -15
- fractal_server/app/runner/executors/{slurm/ssh → slurm_ssh}/_executor_wait_thread.py +1 -1
- fractal_server/app/runner/executors/{slurm/ssh → slurm_ssh}/_slurm_job.py +1 -1
- fractal_server/app/runner/executors/{slurm/ssh → slurm_ssh}/executor.py +13 -14
- fractal_server/app/runner/executors/{slurm/sudo → slurm_sudo}/_check_jobs_status.py +11 -9
- fractal_server/app/runner/executors/{slurm/sudo → slurm_sudo}/_executor_wait_thread.py +3 -3
- fractal_server/app/runner/executors/{slurm/sudo → slurm_sudo}/_subprocess_run_as_user.py +2 -68
- fractal_server/app/runner/executors/slurm_sudo/runner.py +632 -0
- fractal_server/app/runner/task_files.py +70 -96
- fractal_server/app/runner/v2/__init__.py +9 -19
- fractal_server/app/runner/v2/_local.py +84 -0
- fractal_server/app/runner/v2/{_slurm_ssh/__init__.py → _slurm_ssh.py} +12 -13
- fractal_server/app/runner/v2/{_slurm_sudo/__init__.py → _slurm_sudo.py} +12 -12
- fractal_server/app/runner/v2/runner.py +106 -31
- fractal_server/app/runner/v2/runner_functions.py +88 -64
- fractal_server/app/runner/v2/runner_functions_low_level.py +20 -20
- fractal_server/app/schemas/v2/__init__.py +1 -0
- fractal_server/app/schemas/v2/accounting.py +18 -0
- fractal_server/app/schemas/v2/dataset.py +0 -17
- fractal_server/app/schemas/v2/history.py +23 -0
- fractal_server/config.py +58 -52
- fractal_server/migrations/versions/8223fcef886c_image_status.py +63 -0
- fractal_server/migrations/versions/87cd72a537a2_add_historyitem_table.py +68 -0
- fractal_server/migrations/versions/af1ef1c83c9b_add_accounting_tables.py +57 -0
- fractal_server/tasks/v2/utils_background.py +1 -1
- {fractal_server-2.13.0.dist-info → fractal_server-2.14.0a0.dist-info}/METADATA +1 -1
- {fractal_server-2.13.0.dist-info → fractal_server-2.14.0a0.dist-info}/RECORD +66 -55
- fractal_server/app/routes/api/v2/status.py +0 -168
- fractal_server/app/runner/executors/slurm/sudo/executor.py +0 -1281
- fractal_server/app/runner/v2/_local/__init__.py +0 -129
- fractal_server/app/runner/v2/_local/_submit_setup.py +0 -52
- fractal_server/app/runner/v2/_local/executor.py +0 -100
- fractal_server/app/runner/v2/_slurm_sudo/_submit_setup.py +0 -83
- fractal_server/app/runner/v2/handle_failed_job.py +0 -59
- /fractal_server/app/runner/executors/{slurm → local}/__init__.py +0 -0
- /fractal_server/app/runner/executors/{slurm/ssh → slurm_common}/__init__.py +0 -0
- /fractal_server/app/runner/executors/{_job_states.py → slurm_common/_job_states.py} +0 -0
- /fractal_server/app/runner/executors/{slurm → slurm_common}/remote.py +0 -0
- /fractal_server/app/runner/executors/{slurm → slurm_common}/utils_executors.py +0 -0
- /fractal_server/app/runner/executors/{slurm/sudo → slurm_ssh}/__init__.py +0 -0
- /fractal_server/app/runner/{v2/_slurm_common → executors/slurm_sudo}/__init__.py +0 -0
- {fractal_server-2.13.0.dist-info → fractal_server-2.14.0a0.dist-info}/LICENSE +0 -0
- {fractal_server-2.13.0.dist-info → fractal_server-2.14.0a0.dist-info}/WHEEL +0 -0
- {fractal_server-2.13.0.dist-info → fractal_server-2.14.0a0.dist-info}/entry_points.txt +0 -0
@@ -0,0 +1,23 @@
|
|
1
|
+
from datetime import datetime
|
2
|
+
from typing import Any
|
3
|
+
|
4
|
+
from pydantic import BaseModel
|
5
|
+
from pydantic import field_serializer
|
6
|
+
from pydantic.types import AwareDatetime
|
7
|
+
|
8
|
+
|
9
|
+
class HistoryItemV2Read(BaseModel):
|
10
|
+
id: int
|
11
|
+
dataset_id: int
|
12
|
+
workflowtask_id: int
|
13
|
+
timestamp_started: AwareDatetime
|
14
|
+
parameters_hash: str
|
15
|
+
num_available_images: int
|
16
|
+
num_current_images: int
|
17
|
+
images: dict[str, str]
|
18
|
+
workflowtask_dump: dict[str, Any]
|
19
|
+
task_group_dump: dict[str, Any]
|
20
|
+
|
21
|
+
@field_serializer("timestamp_started")
|
22
|
+
def serialize_datetime(v: datetime) -> str:
|
23
|
+
return v.isoformat()
|
fractal_server/config.py
CHANGED
@@ -611,74 +611,80 @@ class Settings(BaseSettings):
|
|
611
611
|
"""
|
612
612
|
Comma-separated list of recipients of the OAuth-signup emails.
|
613
613
|
"""
|
614
|
-
FRACTAL_EMAIL_USE_STARTTLS:
|
614
|
+
FRACTAL_EMAIL_USE_STARTTLS: Literal["true", "false"] = "true"
|
615
615
|
"""
|
616
616
|
Whether to use StartTLS when using the SMTP server.
|
617
|
+
Accepted values: 'true', 'false'.
|
617
618
|
"""
|
618
|
-
FRACTAL_EMAIL_USE_LOGIN:
|
619
|
+
FRACTAL_EMAIL_USE_LOGIN: Literal["true", "false"] = "true"
|
619
620
|
"""
|
620
621
|
Whether to use login when using the SMTP server.
|
622
|
+
If 'true', FRACTAL_EMAIL_PASSWORD and FRACTAL_EMAIL_PASSWORD_KEY must be
|
623
|
+
provided.
|
624
|
+
Accepted values: 'true', 'false'.
|
621
625
|
"""
|
622
626
|
email_settings: Optional[MailSettings] = None
|
623
627
|
|
624
|
-
@model_validator(mode="
|
625
|
-
|
626
|
-
|
627
|
-
|
628
|
-
|
629
|
-
|
630
|
-
|
631
|
-
|
632
|
-
|
633
|
-
|
634
|
-
|
635
|
-
|
636
|
-
|
637
|
-
|
638
|
-
|
639
|
-
|
640
|
-
|
628
|
+
@model_validator(mode="after")
|
629
|
+
def validate_email_settings(self):
|
630
|
+
email_values = [
|
631
|
+
self.FRACTAL_EMAIL_SENDER,
|
632
|
+
self.FRACTAL_EMAIL_SMTP_SERVER,
|
633
|
+
self.FRACTAL_EMAIL_SMTP_PORT,
|
634
|
+
self.FRACTAL_EMAIL_INSTANCE_NAME,
|
635
|
+
self.FRACTAL_EMAIL_RECIPIENTS,
|
636
|
+
]
|
637
|
+
if len(set(email_values)) == 1:
|
638
|
+
# All required EMAIL attributes are None
|
639
|
+
pass
|
640
|
+
elif None in email_values:
|
641
|
+
# Not all required EMAIL attributes are set
|
642
|
+
error_msg = (
|
643
|
+
"Invalid FRACTAL_EMAIL configuration. "
|
644
|
+
f"Given values: {email_values}."
|
645
|
+
)
|
646
|
+
raise ValueError(error_msg)
|
647
|
+
else:
|
648
|
+
use_starttls = self.FRACTAL_EMAIL_USE_STARTTLS == "true"
|
649
|
+
use_login = self.FRACTAL_EMAIL_USE_LOGIN == "true"
|
641
650
|
|
642
|
-
if
|
643
|
-
if
|
651
|
+
if use_login:
|
652
|
+
if self.FRACTAL_EMAIL_PASSWORD is None:
|
644
653
|
raise ValueError(
|
645
|
-
"'FRACTAL_EMAIL_USE_LOGIN' is
|
654
|
+
"'FRACTAL_EMAIL_USE_LOGIN' is 'true' but "
|
646
655
|
"'FRACTAL_EMAIL_PASSWORD' is not provided."
|
647
656
|
)
|
648
|
-
|
657
|
+
if self.FRACTAL_EMAIL_PASSWORD_KEY is None:
|
649
658
|
raise ValueError(
|
650
|
-
"'FRACTAL_EMAIL_USE_LOGIN' is
|
659
|
+
"'FRACTAL_EMAIL_USE_LOGIN' is 'true' but "
|
651
660
|
"'FRACTAL_EMAIL_PASSWORD_KEY' is not provided."
|
652
661
|
)
|
653
|
-
|
654
|
-
|
655
|
-
(
|
656
|
-
|
657
|
-
|
658
|
-
|
659
|
-
|
660
|
-
|
661
|
-
|
662
|
-
|
663
|
-
|
664
|
-
|
665
|
-
)
|
662
|
+
try:
|
663
|
+
(
|
664
|
+
Fernet(self.FRACTAL_EMAIL_PASSWORD_KEY)
|
665
|
+
.decrypt(self.FRACTAL_EMAIL_PASSWORD)
|
666
|
+
.decode("utf-8")
|
667
|
+
)
|
668
|
+
except Exception as e:
|
669
|
+
raise ValueError(
|
670
|
+
"Invalid pair (FRACTAL_EMAIL_PASSWORD, "
|
671
|
+
"FRACTAL_EMAIL_PASSWORD_KEY). "
|
672
|
+
f"Original error: {str(e)}."
|
673
|
+
)
|
666
674
|
|
667
|
-
|
668
|
-
sender=
|
669
|
-
recipients=
|
670
|
-
smtp_server=
|
671
|
-
port=
|
672
|
-
encrypted_password=
|
673
|
-
encryption_key=
|
674
|
-
instance_name=
|
675
|
-
use_starttls=
|
676
|
-
|
677
|
-
),
|
678
|
-
use_login=email_values.get("FRACTAL_EMAIL_USE_LOGIN", True),
|
675
|
+
self.email_settings = MailSettings(
|
676
|
+
sender=self.FRACTAL_EMAIL_SENDER,
|
677
|
+
recipients=self.FRACTAL_EMAIL_RECIPIENTS.split(","),
|
678
|
+
smtp_server=self.FRACTAL_EMAIL_SMTP_SERVER,
|
679
|
+
port=self.FRACTAL_EMAIL_SMTP_PORT,
|
680
|
+
encrypted_password=self.FRACTAL_EMAIL_PASSWORD,
|
681
|
+
encryption_key=self.FRACTAL_EMAIL_PASSWORD_KEY,
|
682
|
+
instance_name=self.FRACTAL_EMAIL_INSTANCE_NAME,
|
683
|
+
use_starttls=use_starttls,
|
684
|
+
use_login=use_login,
|
679
685
|
)
|
680
686
|
|
681
|
-
return
|
687
|
+
return self
|
682
688
|
|
683
689
|
###########################################################################
|
684
690
|
# BUSINESS LOGIC
|
@@ -699,7 +705,7 @@ class Settings(BaseSettings):
|
|
699
705
|
|
700
706
|
info = f"FRACTAL_RUNNER_BACKEND={self.FRACTAL_RUNNER_BACKEND}"
|
701
707
|
if self.FRACTAL_RUNNER_BACKEND == "slurm":
|
702
|
-
from fractal_server.app.runner.executors.
|
708
|
+
from fractal_server.app.runner.executors.slurm_common._slurm_config import ( # noqa: E501
|
703
709
|
load_slurm_config_file,
|
704
710
|
)
|
705
711
|
|
@@ -729,7 +735,7 @@ class Settings(BaseSettings):
|
|
729
735
|
f"Must set FRACTAL_SLURM_WORKER_PYTHON when {info}"
|
730
736
|
)
|
731
737
|
|
732
|
-
from fractal_server.app.runner.executors.
|
738
|
+
from fractal_server.app.runner.executors.slurm_common._slurm_config import ( # noqa: E501
|
733
739
|
load_slurm_config_file,
|
734
740
|
)
|
735
741
|
|
@@ -0,0 +1,63 @@
|
|
1
|
+
"""image status
|
2
|
+
|
3
|
+
Revision ID: 8223fcef886c
|
4
|
+
Revises: 87cd72a537a2
|
5
|
+
Create Date: 2025-02-24 11:32:22.267338
|
6
|
+
|
7
|
+
"""
|
8
|
+
import sqlalchemy as sa
|
9
|
+
import sqlmodel
|
10
|
+
from alembic import op
|
11
|
+
|
12
|
+
|
13
|
+
# revision identifiers, used by Alembic.
|
14
|
+
revision = "8223fcef886c"
|
15
|
+
down_revision = "87cd72a537a2"
|
16
|
+
branch_labels = None
|
17
|
+
depends_on = None
|
18
|
+
|
19
|
+
|
20
|
+
def upgrade() -> None:
|
21
|
+
# ### commands auto generated by Alembic - please adjust! ###
|
22
|
+
op.create_table(
|
23
|
+
"imagestatus",
|
24
|
+
sa.Column(
|
25
|
+
"zarr_url", sqlmodel.sql.sqltypes.AutoString(), nullable=False
|
26
|
+
),
|
27
|
+
sa.Column("workflowtask_id", sa.Integer(), nullable=False),
|
28
|
+
sa.Column("dataset_id", sa.Integer(), nullable=False),
|
29
|
+
sa.Column(
|
30
|
+
"parameters_hash",
|
31
|
+
sqlmodel.sql.sqltypes.AutoString(),
|
32
|
+
nullable=False,
|
33
|
+
),
|
34
|
+
sa.Column(
|
35
|
+
"status", sqlmodel.sql.sqltypes.AutoString(), nullable=False
|
36
|
+
),
|
37
|
+
sa.Column(
|
38
|
+
"logfile", sqlmodel.sql.sqltypes.AutoString(), nullable=False
|
39
|
+
),
|
40
|
+
sa.ForeignKeyConstraint(
|
41
|
+
["dataset_id"],
|
42
|
+
["datasetv2.id"],
|
43
|
+
name=op.f("fk_imagestatus_dataset_id_datasetv2"),
|
44
|
+
),
|
45
|
+
sa.ForeignKeyConstraint(
|
46
|
+
["workflowtask_id"],
|
47
|
+
["workflowtaskv2.id"],
|
48
|
+
name=op.f("fk_imagestatus_workflowtask_id_workflowtaskv2"),
|
49
|
+
),
|
50
|
+
sa.PrimaryKeyConstraint(
|
51
|
+
"zarr_url",
|
52
|
+
"workflowtask_id",
|
53
|
+
"dataset_id",
|
54
|
+
name=op.f("pk_imagestatus"),
|
55
|
+
),
|
56
|
+
)
|
57
|
+
# ### end Alembic commands ###
|
58
|
+
|
59
|
+
|
60
|
+
def downgrade() -> None:
|
61
|
+
# ### commands auto generated by Alembic - please adjust! ###
|
62
|
+
op.drop_table("imagestatus")
|
63
|
+
# ### end Alembic commands ###
|
@@ -0,0 +1,68 @@
|
|
1
|
+
"""Add HistoryItem table
|
2
|
+
|
3
|
+
Revision ID: 87cd72a537a2
|
4
|
+
Revises: af1ef1c83c9b
|
5
|
+
Create Date: 2025-02-18 10:48:16.401995
|
6
|
+
|
7
|
+
"""
|
8
|
+
import sqlalchemy as sa
|
9
|
+
import sqlmodel
|
10
|
+
from alembic import op
|
11
|
+
from sqlalchemy.dialects import postgresql
|
12
|
+
|
13
|
+
# revision identifiers, used by Alembic.
|
14
|
+
revision = "87cd72a537a2"
|
15
|
+
down_revision = "af1ef1c83c9b"
|
16
|
+
branch_labels = None
|
17
|
+
depends_on = None
|
18
|
+
|
19
|
+
|
20
|
+
def upgrade() -> None:
|
21
|
+
# ### commands auto generated by Alembic - please adjust! ###
|
22
|
+
op.create_table(
|
23
|
+
"historyitemv2",
|
24
|
+
sa.Column("id", sa.Integer(), nullable=False),
|
25
|
+
sa.Column("dataset_id", sa.Integer(), nullable=False),
|
26
|
+
sa.Column("workflowtask_id", sa.Integer(), nullable=True),
|
27
|
+
sa.Column(
|
28
|
+
"timestamp_started", sa.DateTime(timezone=True), nullable=False
|
29
|
+
),
|
30
|
+
sa.Column(
|
31
|
+
"workflowtask_dump",
|
32
|
+
postgresql.JSONB(astext_type=sa.Text()),
|
33
|
+
nullable=False,
|
34
|
+
),
|
35
|
+
sa.Column(
|
36
|
+
"task_group_dump",
|
37
|
+
postgresql.JSONB(astext_type=sa.Text()),
|
38
|
+
nullable=False,
|
39
|
+
),
|
40
|
+
sa.Column(
|
41
|
+
"parameters_hash",
|
42
|
+
sqlmodel.sql.sqltypes.AutoString(),
|
43
|
+
nullable=False,
|
44
|
+
),
|
45
|
+
sa.Column("num_available_images", sa.Integer(), nullable=False),
|
46
|
+
sa.Column("num_current_images", sa.Integer(), nullable=False),
|
47
|
+
sa.Column(
|
48
|
+
"images", postgresql.JSONB(astext_type=sa.Text()), nullable=False
|
49
|
+
),
|
50
|
+
sa.ForeignKeyConstraint(
|
51
|
+
["dataset_id"],
|
52
|
+
["datasetv2.id"],
|
53
|
+
name=op.f("fk_historyitemv2_dataset_id_datasetv2"),
|
54
|
+
),
|
55
|
+
sa.ForeignKeyConstraint(
|
56
|
+
["workflowtask_id"],
|
57
|
+
["workflowtaskv2.id"],
|
58
|
+
name=op.f("fk_historyitemv2_workflowtask_id_workflowtaskv2"),
|
59
|
+
),
|
60
|
+
sa.PrimaryKeyConstraint("id", name=op.f("pk_historyitemv2")),
|
61
|
+
)
|
62
|
+
# ### end Alembic commands ###
|
63
|
+
|
64
|
+
|
65
|
+
def downgrade() -> None:
|
66
|
+
# ### commands auto generated by Alembic - please adjust! ###
|
67
|
+
op.drop_table("historyitemv2")
|
68
|
+
# ### end Alembic commands ###
|
@@ -0,0 +1,57 @@
|
|
1
|
+
"""Add accounting tables
|
2
|
+
|
3
|
+
Revision ID: af1ef1c83c9b
|
4
|
+
Revises: 1eac13a26c83
|
5
|
+
Create Date: 2025-02-17 14:22:32.701581
|
6
|
+
|
7
|
+
"""
|
8
|
+
import sqlalchemy as sa
|
9
|
+
from alembic import op
|
10
|
+
from sqlalchemy.dialects import postgresql
|
11
|
+
|
12
|
+
# revision identifiers, used by Alembic.
|
13
|
+
revision = "af1ef1c83c9b"
|
14
|
+
down_revision = "1eac13a26c83"
|
15
|
+
branch_labels = None
|
16
|
+
depends_on = None
|
17
|
+
|
18
|
+
|
19
|
+
def upgrade() -> None:
|
20
|
+
# ### commands auto generated by Alembic - please adjust! ###
|
21
|
+
op.create_table(
|
22
|
+
"accountingrecord",
|
23
|
+
sa.Column("id", sa.Integer(), nullable=False),
|
24
|
+
sa.Column("user_id", sa.Integer(), nullable=False),
|
25
|
+
sa.Column("timestamp", sa.DateTime(timezone=True), nullable=False),
|
26
|
+
sa.Column("num_tasks", sa.Integer(), nullable=False),
|
27
|
+
sa.Column("num_new_images", sa.Integer(), nullable=False),
|
28
|
+
sa.ForeignKeyConstraint(
|
29
|
+
["user_id"],
|
30
|
+
["user_oauth.id"],
|
31
|
+
name=op.f("fk_accountingrecord_user_id_user_oauth"),
|
32
|
+
),
|
33
|
+
sa.PrimaryKeyConstraint("id", name=op.f("pk_accountingrecord")),
|
34
|
+
)
|
35
|
+
op.create_table(
|
36
|
+
"accountingrecordslurm",
|
37
|
+
sa.Column("id", sa.Integer(), nullable=False),
|
38
|
+
sa.Column("user_id", sa.Integer(), nullable=False),
|
39
|
+
sa.Column("timestamp", sa.DateTime(timezone=True), nullable=False),
|
40
|
+
sa.Column(
|
41
|
+
"slurm_job_ids", postgresql.ARRAY(sa.Integer()), nullable=True
|
42
|
+
),
|
43
|
+
sa.ForeignKeyConstraint(
|
44
|
+
["user_id"],
|
45
|
+
["user_oauth.id"],
|
46
|
+
name=op.f("fk_accountingrecordslurm_user_id_user_oauth"),
|
47
|
+
),
|
48
|
+
sa.PrimaryKeyConstraint("id", name=op.f("pk_accountingrecordslurm")),
|
49
|
+
)
|
50
|
+
# ### end Alembic commands ###
|
51
|
+
|
52
|
+
|
53
|
+
def downgrade() -> None:
|
54
|
+
# ### commands auto generated by Alembic - please adjust! ###
|
55
|
+
op.drop_table("accountingrecordslurm")
|
56
|
+
op.drop_table("accountingrecord")
|
57
|
+
# ### end Alembic commands ###
|
@@ -1,15 +1,20 @@
|
|
1
|
-
fractal_server/__init__.py,sha256
|
1
|
+
fractal_server/__init__.py,sha256=-BpqXrn9rdBZ9nskTf9w2keznxwwl_s4iKTWVW5MXlA,25
|
2
2
|
fractal_server/__main__.py,sha256=igfS2XL3e8JycuhASl2vsYuIPma0MG0cfPPFRuQfh14,6906
|
3
3
|
fractal_server/alembic.ini,sha256=MWwi7GzjzawI9cCAK1LW7NxIBQDUqD12-ptJoq5JpP0,3153
|
4
4
|
fractal_server/app/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
5
5
|
fractal_server/app/db/__init__.py,sha256=wup2wcOkyOh8Vd0Xm76PZn_naxeMqaL4eF8DHHXTGlI,2889
|
6
|
+
fractal_server/app/history/__init__.py,sha256=bisQpsMCFmtQGhIsf9ES0HdEuH4DYkPxVO7SlvxaWTY,239
|
7
|
+
fractal_server/app/history/image_updates.py,sha256=7fwZ11NBi3hfjdCl-6C3rA6bIXx0lITHtKMkjsSCRLs,3948
|
8
|
+
fractal_server/app/history/status_enum.py,sha256=xBBLHQY2Z105b2_HVU9DVRgdEVbbjLm6l4kkcV0Q1Sk,275
|
6
9
|
fractal_server/app/models/__init__.py,sha256=xJWiGAwpXmCpnFMC4c_HTqoUCzMOXrakoGLUH_uMvdA,415
|
7
10
|
fractal_server/app/models/linkusergroup.py,sha256=LWTUfhH2uAnn_4moK7QdRUIHWtpw-hPZuW-5jClv_OE,610
|
8
11
|
fractal_server/app/models/linkuserproject.py,sha256=hvaxh3Lkiy2uUCwB8gvn8RorCpvxSSdzWdCS_U1GL7g,315
|
9
12
|
fractal_server/app/models/security.py,sha256=mMb_HiwWY74QZrs9xuyno0CVSmk4GYQWk5FxGixr8SU,3860
|
10
13
|
fractal_server/app/models/user_settings.py,sha256=Y-ZV-uZAFLZqXxy8c5_Qeh_F7zQuZDWOgLpU6Zs6iqU,1316
|
11
|
-
fractal_server/app/models/v2/__init__.py,sha256=
|
14
|
+
fractal_server/app/models/v2/__init__.py,sha256=VNoK2OUB8_IPvZoItLOxup84ZMNslO7j30jojNS2lI0,774
|
15
|
+
fractal_server/app/models/v2/accounting.py,sha256=f2ALxfKKBNxFLJTtC2-YqRepVK253x68y7zkD2V_Nls,1115
|
12
16
|
fractal_server/app/models/v2/dataset.py,sha256=O5_6YfNeX6JM7PUcEZhbeV4JCvuAhFCQbOOuefpVnqc,1544
|
17
|
+
fractal_server/app/models/v2/history.py,sha256=MFr4Z29RLIFSPH5M8GhgDMaXOz4SMAiC1MZmaC4kLk4,1528
|
13
18
|
fractal_server/app/models/v2/job.py,sha256=L0P1mrztMqqb-6qdPEbuHXhCsf2mxVUct_ehcXrREGg,1844
|
14
19
|
fractal_server/app/models/v2/project.py,sha256=rAHoh5KfYwIaW7rTX0_O0jvWmxEvfo1BafvmcXuSSRk,786
|
15
20
|
fractal_server/app/models/v2/task.py,sha256=8KEROaadgccXRZIP7EriBp2j1FgzYkgiirOi5_fG79M,1494
|
@@ -18,31 +23,33 @@ fractal_server/app/models/v2/workflow.py,sha256=YBgFGCziUgU0aJ5EM3Svu9W2c46AewZO
|
|
18
23
|
fractal_server/app/models/v2/workflowtask.py,sha256=919L2jCm9y57MXiezGBb28uiXpxyiSHwA_DkDF9OVjg,1226
|
19
24
|
fractal_server/app/routes/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
20
25
|
fractal_server/app/routes/admin/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
21
|
-
fractal_server/app/routes/admin/v2/__init__.py,sha256=
|
22
|
-
fractal_server/app/routes/admin/v2/
|
26
|
+
fractal_server/app/routes/admin/v2/__init__.py,sha256=_5lqb6-M8-fZqE1HRMep6pAFYRUKMxrvbZOKs-RXWkw,933
|
27
|
+
fractal_server/app/routes/admin/v2/accounting.py,sha256=ueTGk9748d-gNorqCkkhddgGKzgpWVZQ4G0Loobl7eQ,3788
|
28
|
+
fractal_server/app/routes/admin/v2/impersonate.py,sha256=gc4lshfEPFR6W2asH7aKu6hqE6chzusdhAUVV9p51eU,1131
|
29
|
+
fractal_server/app/routes/admin/v2/job.py,sha256=4soc-5d99QEsir7U9AqpofgaGggSBwgMm7mXW5LBvSI,7439
|
23
30
|
fractal_server/app/routes/admin/v2/project.py,sha256=luy-yiGX1JYTdPm1hpIdDUUqPm8xHuipLy9k2X6zu74,1223
|
24
31
|
fractal_server/app/routes/admin/v2/task.py,sha256=h6O_DLYgp7KMExydPRO-1UsvsYj8S52E3CjslDNJZnA,4375
|
25
|
-
fractal_server/app/routes/admin/v2/task_group.py,sha256=
|
32
|
+
fractal_server/app/routes/admin/v2/task_group.py,sha256=XTjdqgABXZcx9EenaoqSmHh12BXSentUus3SV0oxBMs,7929
|
26
33
|
fractal_server/app/routes/admin/v2/task_group_lifecycle.py,sha256=0e0ZJ_k75TVHaT2o8Xk33DPDSgh-eBhZf-y4y7t-Adg,9429
|
27
34
|
fractal_server/app/routes/api/__init__.py,sha256=2IDheFi0OFdsUg7nbUiyahqybvpgXqeHUXIL2QtWrQQ,641
|
28
|
-
fractal_server/app/routes/api/v2/__init__.py,sha256=
|
29
|
-
fractal_server/app/routes/api/v2/_aux_functions.py,sha256=
|
30
|
-
fractal_server/app/routes/api/v2/_aux_functions_task_lifecycle.py,sha256=
|
35
|
+
fractal_server/app/routes/api/v2/__init__.py,sha256=S7zOeoLkD6Sss1JLRQxeQWPSXKMX2yaIVhLQUw0PDh0,2176
|
36
|
+
fractal_server/app/routes/api/v2/_aux_functions.py,sha256=m4gqcOAatwShBmUeiSSF-I_rIRY-bHRSjEfmvnGU0AA,13498
|
37
|
+
fractal_server/app/routes/api/v2/_aux_functions_task_lifecycle.py,sha256=qdXCb6IP8-qPEAxGZKljtjIqNzIAyRaAsQSRi5VqFHM,6773
|
31
38
|
fractal_server/app/routes/api/v2/_aux_functions_tasks.py,sha256=uhNSs-jcS7ndIUFKiOC1yrDiViw3uvKEXi9UL04BMks,11642
|
32
|
-
fractal_server/app/routes/api/v2/dataset.py,sha256=
|
39
|
+
fractal_server/app/routes/api/v2/dataset.py,sha256=gS5169eJRGHBQNUnkDB75Bv3Kg8Ql-tMVw5_FAxUEKc,9664
|
40
|
+
fractal_server/app/routes/api/v2/history.py,sha256=Np2TzTLstOKhrbqTsxak8Z1uvafsrGU2EHIflzgHfXQ,8093
|
33
41
|
fractal_server/app/routes/api/v2/images.py,sha256=32sSDSWri_A8uQHcdbVTPvGGEjj9vk5ILj8q0-2jLX8,8507
|
34
42
|
fractal_server/app/routes/api/v2/job.py,sha256=m89FTh9Px25oXCeWj2k2NdGWQaO2oxMh-6lZppcsJOY,5551
|
35
43
|
fractal_server/app/routes/api/v2/project.py,sha256=3kMp1ValIVwY-qogfRNgWmSMk0jgsk1VJlY8MhwvH1Q,6665
|
36
|
-
fractal_server/app/routes/api/v2/
|
37
|
-
fractal_server/app/routes/api/v2/submit.py,sha256=a2Jo9kEvFCAD8L1mHPkk5aj_xPWfrXrT0o-wf758z1s,8599
|
44
|
+
fractal_server/app/routes/api/v2/submit.py,sha256=K4OjcSg476JXIeeMUaYdTDk8Qpj5IO5UULvfErI7Y5Y,8624
|
38
45
|
fractal_server/app/routes/api/v2/task.py,sha256=z3_SxsXoKsbM9GGNJUdIiZisQwAJSBqvCc7thaJIOTU,7191
|
39
46
|
fractal_server/app/routes/api/v2/task_collection.py,sha256=IDNF6sjDuU37HIQ0TuQA-TZIuf7nfHAQXUUNmkrlhLM,12706
|
40
47
|
fractal_server/app/routes/api/v2/task_collection_custom.py,sha256=cctW61-C2QYF2KXluS15lLhZJS_kt30Ca6UGLFO32z0,6207
|
41
|
-
fractal_server/app/routes/api/v2/task_group.py,sha256=
|
48
|
+
fractal_server/app/routes/api/v2/task_group.py,sha256=j3zDvVZizB7NWEgVgZU42JCXETkaVkk2ImJPr0jS7BQ,8164
|
42
49
|
fractal_server/app/routes/api/v2/task_group_lifecycle.py,sha256=3o9bCC8ubMwffQPPaxQZy-CjH9IB2RkIReIecI6L2_w,9300
|
43
|
-
fractal_server/app/routes/api/v2/workflow.py,sha256=
|
50
|
+
fractal_server/app/routes/api/v2/workflow.py,sha256=R-wnT9tWTSbaNobGcfgLdk-4pbfbxoBwKZd1JRZXsSU,12223
|
44
51
|
fractal_server/app/routes/api/v2/workflow_import.py,sha256=INmnhlMEBJp-vHPR0f940DANPmIidts3OfcooeM_aNA,11205
|
45
|
-
fractal_server/app/routes/api/v2/workflowtask.py,sha256=
|
52
|
+
fractal_server/app/routes/api/v2/workflowtask.py,sha256=89yLpSzdr7Mv3wRmdMt71CSC3hclrVUP56UVtfTQHOQ,12152
|
46
53
|
fractal_server/app/routes/auth/__init__.py,sha256=fao6CS0WiAjHDTvBzgBVV_bSXFpEAeDBF6Z6q7rRkPc,1658
|
47
54
|
fractal_server/app/routes/auth/_aux_auth.py,sha256=UZgauY0V6mSqjte_sYI1cBl2h8bcbLaeWzgpl1jdJlk,4883
|
48
55
|
fractal_server/app/routes/auth/current_user.py,sha256=FUegTahlxT3BdPVCQYir0-ogg2YAaZ1DYuLcE_5NC9Y,5906
|
@@ -52,7 +59,7 @@ fractal_server/app/routes/auth/oauth.py,sha256=AnFHbjqL2AgBX3eksI931xD6RTtmbciHB
|
|
52
59
|
fractal_server/app/routes/auth/register.py,sha256=DlHq79iOvGd_gt2v9uwtsqIKeO6i_GKaW59VIkllPqY,587
|
53
60
|
fractal_server/app/routes/auth/router.py,sha256=tzJrygXFZlmV_uWelVqTOJMEH-3Fr7ydwlgx1LxRjxY,527
|
54
61
|
fractal_server/app/routes/auth/users.py,sha256=Zr1Bsa7Hpricb_1uFwKPCtgt3PzGnP0TaMLMdpbQDNs,7825
|
55
|
-
fractal_server/app/routes/aux/__init__.py,sha256=
|
62
|
+
fractal_server/app/routes/aux/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
56
63
|
fractal_server/app/routes/aux/_job.py,sha256=XWyWpOObcV55YyK7uzGRlaslmPDCBZy4hiSZBpoa_bg,616
|
57
64
|
fractal_server/app/routes/aux/_runner.py,sha256=spNudutueHTBJPhm55RlOuYzb31DhyheSjl2rk6dloM,873
|
58
65
|
fractal_server/app/routes/aux/validate_user_settings.py,sha256=FLVi__8YFcm_6c_K5uMQo7raWWXQLBcZtx8yaPO4jaE,2301
|
@@ -61,44 +68,43 @@ fractal_server/app/runner/components.py,sha256=ZF8ct_Ky5k8IAcrmpYOZ-bc6OBgdELEig
|
|
61
68
|
fractal_server/app/runner/compress_folder.py,sha256=HSc1tv7x2DBjBoXwugZlC79rm9GNBIWtQKK9yWn5ZBI,3991
|
62
69
|
fractal_server/app/runner/exceptions.py,sha256=_qZ_t8O4umAdJ1ikockiF5rDJuxnEskrGrLjZcnQl7A,4159
|
63
70
|
fractal_server/app/runner/executors/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
64
|
-
fractal_server/app/runner/executors/
|
65
|
-
fractal_server/app/runner/executors/
|
66
|
-
fractal_server/app/runner/executors/
|
67
|
-
fractal_server/app/runner/executors/
|
68
|
-
fractal_server/app/runner/executors/
|
69
|
-
fractal_server/app/runner/executors/
|
70
|
-
fractal_server/app/runner/executors/
|
71
|
-
fractal_server/app/runner/executors/
|
72
|
-
fractal_server/app/runner/executors/
|
73
|
-
fractal_server/app/runner/executors/
|
74
|
-
fractal_server/app/runner/executors/
|
75
|
-
fractal_server/app/runner/executors/
|
76
|
-
fractal_server/app/runner/executors/
|
77
|
-
fractal_server/app/runner/executors/
|
78
|
-
fractal_server/app/runner/executors/
|
71
|
+
fractal_server/app/runner/executors/base_runner.py,sha256=uUA4hGeNF6d8IYZ80nueq7PSjuliWiFpyxnhTKBk0U4,3721
|
72
|
+
fractal_server/app/runner/executors/local/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
73
|
+
fractal_server/app/runner/executors/local/_local_config.py,sha256=8dyg2Gh8L2FlG_jJRYLMkcMgVHGEY2w7DME9aaKXFFo,3688
|
74
|
+
fractal_server/app/runner/executors/local/_submit_setup.py,sha256=6h4DVcVgzL8Oubw83zixvya4ljmNSXlG0Kp8a01OBLc,1440
|
75
|
+
fractal_server/app/runner/executors/local/runner.py,sha256=tEI3qe9UQKgqNoY6gkP1b2O1yRw3VGTiPTDKztrCt2I,7577
|
76
|
+
fractal_server/app/runner/executors/slurm_common/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
77
|
+
fractal_server/app/runner/executors/slurm_common/_batching.py,sha256=ZY020JZlDS5mfpgpWTChQkyHU7iLE5kx2HVd57_C6XA,8850
|
78
|
+
fractal_server/app/runner/executors/slurm_common/_job_states.py,sha256=nuV-Zba38kDrRESOVB3gaGbrSPZc4q7YGichQaeqTW0,238
|
79
|
+
fractal_server/app/runner/executors/slurm_common/_slurm_config.py,sha256=yqcjAlYF_Gasv0b013cg3vz7abmjIHIgOwei7bCojuk,15896
|
80
|
+
fractal_server/app/runner/executors/slurm_common/_submit_setup.py,sha256=crbfAAvXbxe_9PaokXkkVdPV65lSCFbInZ0RlT6uyHI,2746
|
81
|
+
fractal_server/app/runner/executors/slurm_common/get_slurm_config.py,sha256=GwdJsEAP9vEBA-FkOGSRHHeRUv1E6bmKZwWyO5Daa70,5994
|
82
|
+
fractal_server/app/runner/executors/slurm_common/remote.py,sha256=wLziIsGdSMiO-jIXM8x77JRK82g_2hx0iBKTiMghuIo,5852
|
83
|
+
fractal_server/app/runner/executors/slurm_common/utils_executors.py,sha256=naPyJI0I3lD-sYHbSXbMFGUBK4h_SggA5V91Z1Ch1Xg,1416
|
84
|
+
fractal_server/app/runner/executors/slurm_ssh/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
85
|
+
fractal_server/app/runner/executors/slurm_ssh/_executor_wait_thread.py,sha256=lnW8dNNPqqbpQvojVBQaNJm4wN3Qkw02RWBZ1w68Hyw,3755
|
86
|
+
fractal_server/app/runner/executors/slurm_ssh/_slurm_job.py,sha256=IL1C52dezEiincVX2yKryNiPHi4YOMURNLdQO_QPdGw,4406
|
87
|
+
fractal_server/app/runner/executors/slurm_ssh/executor.py,sha256=JW6zguEy9XsHebSPt_JTK4Kw78r5rlbDEipSOxOqoHk,53660
|
88
|
+
fractal_server/app/runner/executors/slurm_sudo/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
89
|
+
fractal_server/app/runner/executors/slurm_sudo/_check_jobs_status.py,sha256=eZd9lxbObsqc1M3B96IGMJ-1oC0jo8lBOX4Nto97VvE,2036
|
90
|
+
fractal_server/app/runner/executors/slurm_sudo/_executor_wait_thread.py,sha256=7CaMarvaKFCq3RcyqW5CABng_3b3QaS2pmTzVRDgm3I,4077
|
91
|
+
fractal_server/app/runner/executors/slurm_sudo/_subprocess_run_as_user.py,sha256=O1bNg1DiSDJmQE0RmOk2Ii47DagiXp5ryd0R6KxO2OM,3177
|
92
|
+
fractal_server/app/runner/executors/slurm_sudo/runner.py,sha256=JFVGb0K7w0l6kuy4QjIey_3M4indQUwvqbflzdW9Gi8,21256
|
79
93
|
fractal_server/app/runner/extract_archive.py,sha256=tLpjDrX47OjTNhhoWvm6iNukg8KoieWyTb7ZfvE9eWU,2483
|
80
94
|
fractal_server/app/runner/filenames.py,sha256=lPnxKHtdRizr6FqG3zOdjDPyWA7GoaJGTtiuJV0gA8E,70
|
81
95
|
fractal_server/app/runner/run_subprocess.py,sha256=c3JbYXq3hX2aaflQU19qJ5Xs6J6oXGNvnTEoAfv2bxc,959
|
82
96
|
fractal_server/app/runner/set_start_and_last_task_index.py,sha256=-q4zVybAj8ek2XlbENKlfOAJ39hT_zoJoZkqzDqiAMY,1254
|
83
97
|
fractal_server/app/runner/shutdown.py,sha256=9pfSKHDNdIcm0eY-opgRTi7y0HmvfPmYiu9JR6Idark,2082
|
84
|
-
fractal_server/app/runner/task_files.py,sha256=
|
85
|
-
fractal_server/app/runner/v2/__init__.py,sha256=
|
86
|
-
fractal_server/app/runner/v2/_local
|
87
|
-
fractal_server/app/runner/v2/
|
88
|
-
fractal_server/app/runner/v2/
|
89
|
-
fractal_server/app/runner/v2/_local/executor.py,sha256=QrJlD77G6q4WohoJQO7XXbvi2RlCUsNvMnPDEZIoAqA,3620
|
90
|
-
fractal_server/app/runner/v2/_slurm_common/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
91
|
-
fractal_server/app/runner/v2/_slurm_common/get_slurm_config.py,sha256=21Tl70L8oyo3H_r0vXW6KO9pq2IKEiV5ZkshsPsBjzI,6226
|
92
|
-
fractal_server/app/runner/v2/_slurm_ssh/__init__.py,sha256=wDW58jBPcmOUeBMcuaOqTz1ElEqiyQn9ar7zp2xCPX4,3274
|
93
|
-
fractal_server/app/runner/v2/_slurm_ssh/_submit_setup.py,sha256=a5_FDPH_yxYmrjAjMRLgh_Y4DSG3mRslCLQodGM3-t4,2838
|
94
|
-
fractal_server/app/runner/v2/_slurm_sudo/__init__.py,sha256=16P_3nDRtXztBf0-JOZzNmpnp164kgzRTADaLX733NI,2921
|
95
|
-
fractal_server/app/runner/v2/_slurm_sudo/_submit_setup.py,sha256=a5_FDPH_yxYmrjAjMRLgh_Y4DSG3mRslCLQodGM3-t4,2838
|
98
|
+
fractal_server/app/runner/task_files.py,sha256=5enzBqiQct1AUGwrGX-rxFCxnhW3SPYIUylMYwyVfrE,2482
|
99
|
+
fractal_server/app/runner/v2/__init__.py,sha256=fExxP-EQEaXADncxX45DPG9GVlJNjKwnK9yBBjJFqGA,14245
|
100
|
+
fractal_server/app/runner/v2/_local.py,sha256=Zas2RS_f9mfdkXszBpzISHylLX1bX8pFuoLA1fHLFqQ,2945
|
101
|
+
fractal_server/app/runner/v2/_slurm_ssh.py,sha256=6NzRy3Yp84DHhsRHie2NI_UXhhiAusY4nOdTYlhqJOw,3226
|
102
|
+
fractal_server/app/runner/v2/_slurm_sudo.py,sha256=iQ_BwvS88sMzd1vAce_9MOjC8YzZq7rHx2YUpkVRWXQ,2913
|
96
103
|
fractal_server/app/runner/v2/deduplicate_list.py,sha256=IVTE4abBU1bUprFTkxrTfYKnvkNTanWQ-KWh_etiT08,645
|
97
|
-
fractal_server/app/runner/v2/handle_failed_job.py,sha256=-zFWw4d208bQEFUF_sAdH2LdHEARyg1FC8BENr1SjhU,2045
|
98
104
|
fractal_server/app/runner/v2/merge_outputs.py,sha256=D1L4Taieq9i71SPQyNc1kMokgHh-sV_MqF3bv7QMDBc,907
|
99
|
-
fractal_server/app/runner/v2/runner.py,sha256=
|
100
|
-
fractal_server/app/runner/v2/runner_functions.py,sha256=
|
101
|
-
fractal_server/app/runner/v2/runner_functions_low_level.py,sha256=
|
105
|
+
fractal_server/app/runner/v2/runner.py,sha256=YPzuo4QfXm9nVmZinF3qI1w1AlJwpZ1wVNboyhyTyU4,14456
|
106
|
+
fractal_server/app/runner/v2/runner_functions.py,sha256=EBY64v0NC_fdgKUqZQqCp8XZtPbwVo21P1eXS6Y0AUc,10456
|
107
|
+
fractal_server/app/runner/v2/runner_functions_low_level.py,sha256=dvvRK7od8iQ8vdPf80uGUxs3i5i0buGjCodBxSjZ7PQ,3671
|
102
108
|
fractal_server/app/runner/v2/task_interface.py,sha256=e1GGQSYd0MyBj1EZvEVzqv-HpVE4YffXOq82WLrCaOc,1866
|
103
109
|
fractal_server/app/runner/versions.py,sha256=dSaPRWqmFPHjg20kTCHmi_dmGNcCETflDtDLronNanU,852
|
104
110
|
fractal_server/app/schemas/__init__.py,sha256=stURAU_t3AOBaH0HSUbV-GKhlPKngnnIMoqWc3orFyI,135
|
@@ -107,9 +113,11 @@ fractal_server/app/schemas/_validators.py,sha256=ap0VWJzOfPcq_tbH3sglZClkuinNvMj
|
|
107
113
|
fractal_server/app/schemas/user.py,sha256=vLijVyPIQJdpFc36S6qK2XtSKMzfkhULN1nBsb9tV18,2407
|
108
114
|
fractal_server/app/schemas/user_group.py,sha256=Uao1igRYflBu7Dg6Zs0kaFU3zBFJzIwDLrkFfaJk6z8,2176
|
109
115
|
fractal_server/app/schemas/user_settings.py,sha256=4XeXQ3rnDS1UvLPd9hvh-WVSbzBGcMDjChfiZ_WGi-w,3134
|
110
|
-
fractal_server/app/schemas/v2/__init__.py,sha256=
|
111
|
-
fractal_server/app/schemas/v2/
|
116
|
+
fractal_server/app/schemas/v2/__init__.py,sha256=pjRUOJwZGzsDbBbxfnCgQgShs5V8SaHRqwIQDW3STpY,2676
|
117
|
+
fractal_server/app/schemas/v2/accounting.py,sha256=Wylt7uWTiDIFlHJOh4XEtYitk2FjFlmnodDrJDxcr0E,397
|
118
|
+
fractal_server/app/schemas/v2/dataset.py,sha256=xo7Y3fq5ThMVBp6xDVypdG-EmGfBX_vWVRs66u2pC34,5157
|
112
119
|
fractal_server/app/schemas/v2/dumps.py,sha256=2GUjoqeblUvrSoojBz5odoUUf53IABtbY_5GvFZoMVc,1782
|
120
|
+
fractal_server/app/schemas/v2/history.py,sha256=OHwRIbOIjBiiTYUNZYsHTdEXJHff17JRizQ8pf1e0vk,601
|
113
121
|
fractal_server/app/schemas/v2/job.py,sha256=Dp_RRiC5uvJqq1fAJlBXztAFA-tS5FWuRnUbTnLtL6M,4226
|
114
122
|
fractal_server/app/schemas/v2/manifest.py,sha256=AhUkv3ZfoUffdcpHKOuUTmcZa-0G5Y53hp-O4UaTkG0,7133
|
115
123
|
fractal_server/app/schemas/v2/project.py,sha256=uqBreoS0UAkbVEJJS2HkSdjCCWfFIkv6N70TWk9HgxA,868
|
@@ -122,7 +130,7 @@ fractal_server/app/schemas/v2/workflowtask.py,sha256=qMvwlnFCsnyD8uv8HJ4cFy2-QMm
|
|
122
130
|
fractal_server/app/security/__init__.py,sha256=8dg7vBzLjU43p_eGoHuFBO97FtIDtNnbJJ5mzVSVRNI,14094
|
123
131
|
fractal_server/app/security/signup_email.py,sha256=CR1VbsGFNshxsWquLDZPbUAYnGzkCHeJChtncq63RBc,1434
|
124
132
|
fractal_server/app/user_settings.py,sha256=OP1yiYKtPadxwM51_Q0hdPk3z90TCN4z1BLpQsXyWiU,1316
|
125
|
-
fractal_server/config.py,sha256=
|
133
|
+
fractal_server/config.py,sha256=Lc1lgN4J1sTeE5kdWm3b2ltDYtTzyzmuA6ms1T1ZboI,28824
|
126
134
|
fractal_server/data_migrations/README.md,sha256=_3AEFvDg9YkybDqCLlFPdDmGJvr6Tw7HRI14aZ3LOIw,398
|
127
135
|
fractal_server/data_migrations/tools.py,sha256=LeMeASwYGtEqd-3wOLle6WARdTGAimoyMmRbbJl-hAM,572
|
128
136
|
fractal_server/gunicorn_fractal.py,sha256=u6U01TLGlXgq1v8QmEpLih3QnsInZD7CqphgJ_GrGzc,1230
|
@@ -145,7 +153,9 @@ fractal_server/migrations/versions/50a13d6138fd_initial_schema.py,sha256=zwXegXs
|
|
145
153
|
fractal_server/migrations/versions/5bf02391cfef_v2.py,sha256=axhNkr_H6R4rRbY7oGYazNbFvPXeSyBDWFVbKNmiqs8,8433
|
146
154
|
fractal_server/migrations/versions/70e77f1c38b0_add_applyworkflow_first_task_index_and_.py,sha256=Q-DsMzG3IcUV2Ol1dhJWosDvKERamBE6QvA2zzS5zpQ,1632
|
147
155
|
fractal_server/migrations/versions/71eefd1dd202_add_slurm_accounts.py,sha256=mbWuCkTpRAdGbRhW7lhXs_e5S6O37UAcCN6JfoY5H8A,1353
|
156
|
+
fractal_server/migrations/versions/8223fcef886c_image_status.py,sha256=Nhlw22F9w1Obh-Tte6787Fyglb4NuQwdJQeO-HlkqSs,1743
|
148
157
|
fractal_server/migrations/versions/84bf0fffde30_add_dumps_to_applyworkflow.py,sha256=NSCuhANChsg76vBkShBl-9tQ4VEHubOjtAv1etHhlvY,2684
|
158
|
+
fractal_server/migrations/versions/87cd72a537a2_add_historyitem_table.py,sha256=xxAftQYyQ2C_7qiuPcG5FeVmhFQGznxfCglsfk2CjiU,2092
|
149
159
|
fractal_server/migrations/versions/8e8f227a3e36_update_taskv2_post_2_7_0.py,sha256=68y9-fpSuKx6KPtM_9n8Ho0I1qwa8IoG-yJqXUYQrGg,1111
|
150
160
|
fractal_server/migrations/versions/8f79bd162e35_add_docs_info_and_docs_link_to_task_.py,sha256=6pgODDtyAxevZvAJBj9IJ41inhV1RpwbpZr_qfPPu1A,1115
|
151
161
|
fractal_server/migrations/versions/94a47ea2d3ff_remove_cache_dir_slurm_user_and_slurm_.py,sha256=yL3-Hvzw5jBLKj4LFP1z5ofZE9L9W3tLwYtPNW7z4ko,1508
|
@@ -154,6 +164,7 @@ fractal_server/migrations/versions/99ea79d9e5d2_add_dataset_history.py,sha256=0i
|
|
154
164
|
fractal_server/migrations/versions/9c5ae74c9b98_add_user_settings_table.py,sha256=syONdZNf4-OnAcWIsbzXpYwpXPsXZ4SsmjwVvmVG0PU,2256
|
155
165
|
fractal_server/migrations/versions/9fd26a2b0de4_add_workflow_timestamp_created.py,sha256=4l1AHGUsa0ONoJVZlr3fTXw_xbbQ8O7wlD92Az2aRfM,1849
|
156
166
|
fractal_server/migrations/versions/a7f4d6137b53_add_workflow_dump_to_applyworkflow.py,sha256=ekDUML7ILpmdoqEclKbEUdyLi4uw9HSG_sTjG2hp_JE,867
|
167
|
+
fractal_server/migrations/versions/af1ef1c83c9b_add_accounting_tables.py,sha256=BftudWuSGvKGBzIL5AMb3yWkgTAuaKPBGsYcOzp_gLQ,1899
|
157
168
|
fractal_server/migrations/versions/af8673379a5c_drop_old_filter_columns.py,sha256=9sLd0F7nO5chHHm7RZ4wBA-9bvWomS-av_odKwODADM,1551
|
158
169
|
fractal_server/migrations/versions/d256a7379ab8_taskgroup_activity_and_venv_info_to_.py,sha256=HN3_Pk8G81SzdYjg4K1RZAyjKSlsZGvcYE2nWOUbwxQ,3861
|
159
170
|
fractal_server/migrations/versions/d4fe3708d309_make_applyworkflow_workflow_dump_non_.py,sha256=6cHEZFuTXiQg9yu32Y3RH1XAl71av141WQ6UMbiITIg,949
|
@@ -186,7 +197,7 @@ fractal_server/tasks/v2/templates/3_pip_freeze.sh,sha256=JldREScEBI4cD_qjfX4UK7V
|
|
186
197
|
fractal_server/tasks/v2/templates/4_pip_show.sh,sha256=84NGHlg6JIbrQktgGKyfGsggPFzy6RBJuOmIpPUhsrw,1747
|
187
198
|
fractal_server/tasks/v2/templates/5_get_venv_size_and_file_number.sh,sha256=q-6ZUvA6w6FDVEoSd9O63LaJ9tKZc7qAFH72SGPrd_k,284
|
188
199
|
fractal_server/tasks/v2/templates/6_pip_install_from_freeze.sh,sha256=A2y8RngEjAcRhG-_owA6P7tAdrS_AszFuGXnaeMV8u0,1122
|
189
|
-
fractal_server/tasks/v2/utils_background.py,sha256=
|
200
|
+
fractal_server/tasks/v2/utils_background.py,sha256=W_RvihI1aiYPJNsPo8z4wKuA_bPs0UT2huzLihRpjU4,4248
|
190
201
|
fractal_server/tasks/v2/utils_database.py,sha256=iLbwkxMxTCgpyKe1JQzdfIR3zBfxohgmLwSdGps1AUo,1274
|
191
202
|
fractal_server/tasks/v2/utils_package_names.py,sha256=RDg__xrvQs4ieeVzmVdMcEh95vGQYrv9Hfal-5EDBM8,2393
|
192
203
|
fractal_server/tasks/v2/utils_python_interpreter.py,sha256=5_wrlrTqXyo1YuLZvAW9hrSoh5MyLOzdPVUlUwM7uDQ,955
|
@@ -194,8 +205,8 @@ fractal_server/tasks/v2/utils_templates.py,sha256=07TZpJ0Mh_A4lXVXrrH2o1VLFFGwxe
|
|
194
205
|
fractal_server/urls.py,sha256=QjIKAC1a46bCdiPMu3AlpgFbcv6a4l3ABcd5xz190Og,471
|
195
206
|
fractal_server/utils.py,sha256=PMwrxWFxRTQRl1b9h-NRIbFGPKqpH_hXnkAT3NfZdpY,3571
|
196
207
|
fractal_server/zip_tools.py,sha256=GjDgo_sf6V_DDg6wWeBlZu5zypIxycn_l257p_YVKGc,4876
|
197
|
-
fractal_server-2.
|
198
|
-
fractal_server-2.
|
199
|
-
fractal_server-2.
|
200
|
-
fractal_server-2.
|
201
|
-
fractal_server-2.
|
208
|
+
fractal_server-2.14.0a0.dist-info/LICENSE,sha256=QKAharUuhxL58kSoLizKJeZE3mTCBnX6ucmz8W0lxlk,1576
|
209
|
+
fractal_server-2.14.0a0.dist-info/METADATA,sha256=mbF86y24zVVZ18m50gnS2ghCXEDjqktpK5DWwv7Tok0,4550
|
210
|
+
fractal_server-2.14.0a0.dist-info/WHEEL,sha256=RaoafKOydTQ7I_I3JTrPCg6kUmTgtm4BornzOqyEfJ8,88
|
211
|
+
fractal_server-2.14.0a0.dist-info/entry_points.txt,sha256=8tV2kynvFkjnhbtDnxAqImL6HMVKsopgGfew0DOp5UY,58
|
212
|
+
fractal_server-2.14.0a0.dist-info/RECORD,,
|