fractal-server 2.14.0a6__py3-none-any.whl → 2.14.0a8__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 +0 -4
- fractal_server/app/routes/api/v2/_aux_functions.py +35 -45
- fractal_server/app/routes/api/v2/_aux_functions_history.py +109 -0
- fractal_server/app/routes/api/v2/history.py +42 -71
- fractal_server/app/routes/api/v2/job.py +30 -0
- fractal_server/app/routes/api/v2/status_legacy.py +5 -5
- fractal_server/app/routes/api/v2/task.py +3 -10
- fractal_server/app/routes/api/v2/workflowtask.py +13 -2
- fractal_server/app/runner/executors/base_runner.py +53 -26
- fractal_server/app/runner/executors/local/runner.py +6 -5
- fractal_server/app/runner/executors/slurm_ssh/executor.py +3 -4
- fractal_server/app/runner/executors/slurm_sudo/runner.py +5 -60
- fractal_server/app/runner/v2/runner.py +68 -33
- fractal_server/app/runner/v2/runner_functions.py +256 -14
- fractal_server/app/schemas/v2/__init__.py +7 -1
- fractal_server/app/schemas/v2/dumps.py +20 -4
- fractal_server/app/schemas/v2/history.py +54 -0
- fractal_server/app/schemas/v2/manifest.py +11 -0
- fractal_server/app/schemas/v2/status_legacy.py +35 -0
- fractal_server/app/schemas/v2/task.py +32 -1
- fractal_server/app/schemas/v2/workflowtask.py +2 -21
- fractal_server/tasks/v2/utils_database.py +1 -16
- {fractal_server-2.14.0a6.dist-info → fractal_server-2.14.0a8.dist-info}/METADATA +2 -2
- {fractal_server-2.14.0a6.dist-info → fractal_server-2.14.0a8.dist-info}/RECORD +28 -29
- {fractal_server-2.14.0a6.dist-info → fractal_server-2.14.0a8.dist-info}/WHEEL +1 -1
- fractal_server/app/history/image_updates.py +0 -124
- fractal_server/app/history/status_enum.py +0 -16
- fractal_server/app/schemas/v2/status.py +0 -16
- {fractal_server-2.14.0a6.dist-info → fractal_server-2.14.0a8.dist-info}/LICENSE +0 -0
- {fractal_server-2.14.0a6.dist-info → fractal_server-2.14.0a8.dist-info}/entry_points.txt +0 -0
@@ -5,15 +5,6 @@ from fractal_server.app.models.v2 import TaskV2
|
|
5
5
|
from fractal_server.app.schemas.v2 import TaskCreateV2
|
6
6
|
|
7
7
|
|
8
|
-
def _get_task_type(task: TaskCreateV2) -> str:
|
9
|
-
if task.command_non_parallel is None:
|
10
|
-
return "parallel"
|
11
|
-
elif task.command_parallel is None:
|
12
|
-
return "non_parallel"
|
13
|
-
else:
|
14
|
-
return "compound"
|
15
|
-
|
16
|
-
|
17
8
|
def create_db_tasks_and_update_task_group(
|
18
9
|
*,
|
19
10
|
task_group_id: int,
|
@@ -31,13 +22,7 @@ def create_db_tasks_and_update_task_group(
|
|
31
22
|
Returns:
|
32
23
|
Updated `TaskGroupV2` object.
|
33
24
|
"""
|
34
|
-
actual_task_list = [
|
35
|
-
TaskV2(
|
36
|
-
**task.model_dump(),
|
37
|
-
type=_get_task_type(task),
|
38
|
-
)
|
39
|
-
for task in task_list
|
40
|
-
]
|
25
|
+
actual_task_list = [TaskV2(**task.model_dump()) for task in task_list]
|
41
26
|
task_group = db.get(TaskGroupV2, task_group_id)
|
42
27
|
task_group.task_list = actual_task_list
|
43
28
|
db.add(task_group)
|
@@ -1,8 +1,7 @@
|
|
1
1
|
Metadata-Version: 2.3
|
2
2
|
Name: fractal-server
|
3
|
-
Version: 2.14.
|
3
|
+
Version: 2.14.0a8
|
4
4
|
Summary: Backend component of the Fractal analytics platform
|
5
|
-
Home-page: https://github.com/fractal-analytics-platform/fractal-server
|
6
5
|
License: BSD-3-Clause
|
7
6
|
Author: Tommaso Comparin
|
8
7
|
Author-email: tommaso.comparin@exact-lab.it
|
@@ -29,6 +28,7 @@ Requires-Dist: sqlmodel (==0.0.22)
|
|
29
28
|
Requires-Dist: uvicorn (>=0.29.0,<0.35.0)
|
30
29
|
Requires-Dist: uvicorn-worker (==0.3.0)
|
31
30
|
Project-URL: Documentation, https://fractal-analytics-platform.github.io/fractal-server
|
31
|
+
Project-URL: Homepage, https://github.com/fractal-analytics-platform/fractal-server
|
32
32
|
Project-URL: Repository, https://github.com/fractal-analytics-platform/fractal-server
|
33
33
|
Project-URL: changelog, https://github.com/fractal-analytics-platform/fractal-server/blob/main/CHANGELOG.md
|
34
34
|
Description-Content-Type: text/markdown
|
@@ -1,11 +1,9 @@
|
|
1
|
-
fractal_server/__init__.py,sha256=
|
1
|
+
fractal_server/__init__.py,sha256=kGAQu3H-ucHD5NhKhR9WUJUdDh_6vyFTxQN6G9BnBpY,25
|
2
2
|
fractal_server/__main__.py,sha256=rkM8xjY1KeS3l63irB8yCrlVobR-73uDapC4wvrIlxI,6957
|
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=
|
7
|
-
fractal_server/app/history/image_updates.py,sha256=ToY3yENMM6OdWUuFPG5F7qsLefrsaPqyRDFHaimsaHI,4188
|
8
|
-
fractal_server/app/history/status_enum.py,sha256=umznsG4-ZunCLz2ks3Gb-K_s1irwd4ibOJ8vJ2Z0C-M,235
|
6
|
+
fractal_server/app/history/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
9
7
|
fractal_server/app/models/__init__.py,sha256=xJWiGAwpXmCpnFMC4c_HTqoUCzMOXrakoGLUH_uMvdA,415
|
10
8
|
fractal_server/app/models/linkusergroup.py,sha256=LWTUfhH2uAnn_4moK7QdRUIHWtpw-hPZuW-5jClv_OE,610
|
11
9
|
fractal_server/app/models/linkuserproject.py,sha256=hvaxh3Lkiy2uUCwB8gvn8RorCpvxSSdzWdCS_U1GL7g,315
|
@@ -33,25 +31,25 @@ fractal_server/app/routes/admin/v2/task_group.py,sha256=XTjdqgABXZcx9EenaoqSmHh1
|
|
33
31
|
fractal_server/app/routes/admin/v2/task_group_lifecycle.py,sha256=0e0ZJ_k75TVHaT2o8Xk33DPDSgh-eBhZf-y4y7t-Adg,9429
|
34
32
|
fractal_server/app/routes/api/__init__.py,sha256=B8l6PSAhR10iZqHEiyTat-_0tkeKdrCigIE6DJGP5b8,638
|
35
33
|
fractal_server/app/routes/api/v2/__init__.py,sha256=Q65mxJOfuexzj53m6IB5fNl9PDec-Asu97W0bBxrRMM,2324
|
36
|
-
fractal_server/app/routes/api/v2/_aux_functions.py,sha256=
|
37
|
-
fractal_server/app/routes/api/v2/_aux_functions_history.py,sha256=
|
34
|
+
fractal_server/app/routes/api/v2/_aux_functions.py,sha256=eE-TdEMI_UX3LBDUGwjG5NyUcihDVaHYlG15NlTJ9DI,12872
|
35
|
+
fractal_server/app/routes/api/v2/_aux_functions_history.py,sha256=nWO4jBoL3MWuMMwS-6TwxlTHzgRr8Xed30RSeetLvP8,4199
|
38
36
|
fractal_server/app/routes/api/v2/_aux_functions_task_lifecycle.py,sha256=qdXCb6IP8-qPEAxGZKljtjIqNzIAyRaAsQSRi5VqFHM,6773
|
39
37
|
fractal_server/app/routes/api/v2/_aux_functions_tasks.py,sha256=uhNSs-jcS7ndIUFKiOC1yrDiViw3uvKEXi9UL04BMks,11642
|
40
38
|
fractal_server/app/routes/api/v2/dataset.py,sha256=osoWJIA5SZH4aAr-0TG6Uc3877wzsgCLB_Oek59hRjk,9230
|
41
|
-
fractal_server/app/routes/api/v2/history.py,sha256=
|
39
|
+
fractal_server/app/routes/api/v2/history.py,sha256=9oux9P_BloLLFs0t-bSiKfjaWEH1Al0kzQSr4wFUxac,13042
|
42
40
|
fractal_server/app/routes/api/v2/images.py,sha256=wUhYomNLGtJTtu_pD2oQorcH2LISxo64Wxo6ogc4IXc,8185
|
43
|
-
fractal_server/app/routes/api/v2/job.py,sha256=
|
41
|
+
fractal_server/app/routes/api/v2/job.py,sha256=MU1sHIKk_89WrD0TD44d4ufzqnywot7On_W71KjyUbQ,6500
|
44
42
|
fractal_server/app/routes/api/v2/project.py,sha256=hMvL9QLPUcAAiPGy6ta2LBLTVRozJsfvBPl5D06_MHg,6666
|
45
|
-
fractal_server/app/routes/api/v2/status_legacy.py,sha256=
|
43
|
+
fractal_server/app/routes/api/v2/status_legacy.py,sha256=Q5ZWQNfeZKL8Xgtou2Xr80iaF1uO-r4oSKgq5H42V_8,6349
|
46
44
|
fractal_server/app/routes/api/v2/submit.py,sha256=K4OjcSg476JXIeeMUaYdTDk8Qpj5IO5UULvfErI7Y5Y,8624
|
47
|
-
fractal_server/app/routes/api/v2/task.py,sha256=
|
45
|
+
fractal_server/app/routes/api/v2/task.py,sha256=O7pquZhXIS4lRs5XqHvstiwe8BiCuS-B3ZKJI1g6EJU,6985
|
48
46
|
fractal_server/app/routes/api/v2/task_collection.py,sha256=IDNF6sjDuU37HIQ0TuQA-TZIuf7nfHAQXUUNmkrlhLM,12706
|
49
47
|
fractal_server/app/routes/api/v2/task_collection_custom.py,sha256=cctW61-C2QYF2KXluS15lLhZJS_kt30Ca6UGLFO32z0,6207
|
50
48
|
fractal_server/app/routes/api/v2/task_group.py,sha256=j3zDvVZizB7NWEgVgZU42JCXETkaVkk2ImJPr0jS7BQ,8164
|
51
49
|
fractal_server/app/routes/api/v2/task_group_lifecycle.py,sha256=3o9bCC8ubMwffQPPaxQZy-CjH9IB2RkIReIecI6L2_w,9300
|
52
50
|
fractal_server/app/routes/api/v2/workflow.py,sha256=U3iZX5IiFAJ20-R8IjlYToOdm9gXsmtr1lW7ASEH9P8,11689
|
53
51
|
fractal_server/app/routes/api/v2/workflow_import.py,sha256=INmnhlMEBJp-vHPR0f940DANPmIidts3OfcooeM_aNA,11205
|
54
|
-
fractal_server/app/routes/api/v2/workflowtask.py,sha256=
|
52
|
+
fractal_server/app/routes/api/v2/workflowtask.py,sha256=7_syX2EO7ibF6Xkm7HBPhsUYq6aYnKNeC5iSaafQhG4,11342
|
55
53
|
fractal_server/app/routes/auth/__init__.py,sha256=fao6CS0WiAjHDTvBzgBVV_bSXFpEAeDBF6Z6q7rRkPc,1658
|
56
54
|
fractal_server/app/routes/auth/_aux_auth.py,sha256=UZgauY0V6mSqjte_sYI1cBl2h8bcbLaeWzgpl1jdJlk,4883
|
57
55
|
fractal_server/app/routes/auth/current_user.py,sha256=FUegTahlxT3BdPVCQYir0-ogg2YAaZ1DYuLcE_5NC9Y,5906
|
@@ -71,11 +69,11 @@ fractal_server/app/runner/components.py,sha256=ZF8ct_Ky5k8IAcrmpYOZ-bc6OBgdELEig
|
|
71
69
|
fractal_server/app/runner/compress_folder.py,sha256=HSc1tv7x2DBjBoXwugZlC79rm9GNBIWtQKK9yWn5ZBI,3991
|
72
70
|
fractal_server/app/runner/exceptions.py,sha256=_qZ_t8O4umAdJ1ikockiF5rDJuxnEskrGrLjZcnQl7A,4159
|
73
71
|
fractal_server/app/runner/executors/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
74
|
-
fractal_server/app/runner/executors/base_runner.py,sha256=
|
72
|
+
fractal_server/app/runner/executors/base_runner.py,sha256=v-uUHEvJgRnipTEvU9AmIMkYbkkazqkjm4iAF1GXHEM,4562
|
75
73
|
fractal_server/app/runner/executors/local/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
76
74
|
fractal_server/app/runner/executors/local/_local_config.py,sha256=8dyg2Gh8L2FlG_jJRYLMkcMgVHGEY2w7DME9aaKXFFo,3688
|
77
75
|
fractal_server/app/runner/executors/local/_submit_setup.py,sha256=pDc9Q6axXL8_5JAV0byXzGOLOB0bZF88_L9LZykOgwM,1220
|
78
|
-
fractal_server/app/runner/executors/local/runner.py,sha256=
|
76
|
+
fractal_server/app/runner/executors/local/runner.py,sha256=LNql8q6M-Cn_hEV4IMkNP57XFPQJ6eaVd0YIDKJLk60,5621
|
79
77
|
fractal_server/app/runner/executors/slurm_common/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
80
78
|
fractal_server/app/runner/executors/slurm_common/_batching.py,sha256=ZY020JZlDS5mfpgpWTChQkyHU7iLE5kx2HVd57_C6XA,8850
|
81
79
|
fractal_server/app/runner/executors/slurm_common/_job_states.py,sha256=nuV-Zba38kDrRESOVB3gaGbrSPZc4q7YGichQaeqTW0,238
|
@@ -87,11 +85,11 @@ fractal_server/app/runner/executors/slurm_common/utils_executors.py,sha256=naPyJ
|
|
87
85
|
fractal_server/app/runner/executors/slurm_ssh/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
88
86
|
fractal_server/app/runner/executors/slurm_ssh/_executor_wait_thread.py,sha256=lnW8dNNPqqbpQvojVBQaNJm4wN3Qkw02RWBZ1w68Hyw,3755
|
89
87
|
fractal_server/app/runner/executors/slurm_ssh/_slurm_job.py,sha256=IL1C52dezEiincVX2yKryNiPHi4YOMURNLdQO_QPdGw,4406
|
90
|
-
fractal_server/app/runner/executors/slurm_ssh/executor.py,sha256=
|
88
|
+
fractal_server/app/runner/executors/slurm_ssh/executor.py,sha256=VXMDaQRijYaeKyxly4RkBkRg2inLBZ75rfuODg0Mgr8,53602
|
91
89
|
fractal_server/app/runner/executors/slurm_sudo/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
92
90
|
fractal_server/app/runner/executors/slurm_sudo/_check_jobs_status.py,sha256=eZd9lxbObsqc1M3B96IGMJ-1oC0jo8lBOX4Nto97VvE,2036
|
93
91
|
fractal_server/app/runner/executors/slurm_sudo/_subprocess_run_as_user.py,sha256=O1bNg1DiSDJmQE0RmOk2Ii47DagiXp5ryd0R6KxO2OM,3177
|
94
|
-
fractal_server/app/runner/executors/slurm_sudo/runner.py,sha256=
|
92
|
+
fractal_server/app/runner/executors/slurm_sudo/runner.py,sha256=niDcezFNQ7awfv_7nqABmVhG3oLIf8Z7BwlLxM-chZo,21833
|
95
93
|
fractal_server/app/runner/extract_archive.py,sha256=tLpjDrX47OjTNhhoWvm6iNukg8KoieWyTb7ZfvE9eWU,2483
|
96
94
|
fractal_server/app/runner/filenames.py,sha256=lPnxKHtdRizr6FqG3zOdjDPyWA7GoaJGTtiuJV0gA8E,70
|
97
95
|
fractal_server/app/runner/run_subprocess.py,sha256=c3JbYXq3hX2aaflQU19qJ5Xs6J6oXGNvnTEoAfv2bxc,959
|
@@ -105,8 +103,8 @@ fractal_server/app/runner/v2/_slurm_ssh.py,sha256=5w_lwQzySx-R3kVg2Bf-21n5JpWjJA
|
|
105
103
|
fractal_server/app/runner/v2/_slurm_sudo.py,sha256=CzWUeC6at_Sj-wU1myjA68ZRKMiLZYBTLv9I9odUxBU,2914
|
106
104
|
fractal_server/app/runner/v2/deduplicate_list.py,sha256=IVTE4abBU1bUprFTkxrTfYKnvkNTanWQ-KWh_etiT08,645
|
107
105
|
fractal_server/app/runner/v2/merge_outputs.py,sha256=D1L4Taieq9i71SPQyNc1kMokgHh-sV_MqF3bv7QMDBc,907
|
108
|
-
fractal_server/app/runner/v2/runner.py,sha256=
|
109
|
-
fractal_server/app/runner/v2/runner_functions.py,sha256=
|
106
|
+
fractal_server/app/runner/v2/runner.py,sha256=hsXBFQmoo8fqZC13DxlEwLLSVwsr7AvgTrTfiQXcXyk,15570
|
107
|
+
fractal_server/app/runner/v2/runner_functions.py,sha256=9i7fHMr3BFrgguptJ-Pz3Gu68Okp5e3JvIIEqhdrG3Q,22120
|
110
108
|
fractal_server/app/runner/v2/runner_functions_low_level.py,sha256=dvvRK7od8iQ8vdPf80uGUxs3i5i0buGjCodBxSjZ7PQ,3671
|
111
109
|
fractal_server/app/runner/v2/task_interface.py,sha256=e1GGQSYd0MyBj1EZvEVzqv-HpVE4YffXOq82WLrCaOc,1866
|
112
110
|
fractal_server/app/runner/versions.py,sha256=dSaPRWqmFPHjg20kTCHmi_dmGNcCETflDtDLronNanU,852
|
@@ -116,19 +114,20 @@ fractal_server/app/schemas/_validators.py,sha256=ZzTlTTzRATzf9Snx4Xp67aDmG77GaM2
|
|
116
114
|
fractal_server/app/schemas/user.py,sha256=oCftAKeHdFFowpLyh1G-RiylR8cIO7fTn0PkT5xjs0E,2494
|
117
115
|
fractal_server/app/schemas/user_group.py,sha256=Uao1igRYflBu7Dg6Zs0kaFU3zBFJzIwDLrkFfaJk6z8,2176
|
118
116
|
fractal_server/app/schemas/user_settings.py,sha256=z7hx54yTrWfjo98oX_1lkeRh1UGrC1dSRH6yIOpnCsY,2772
|
119
|
-
fractal_server/app/schemas/v2/__init__.py,sha256=
|
117
|
+
fractal_server/app/schemas/v2/__init__.py,sha256=Q1Sozuh6escPbU3SIsmiJbQMFl9kfIcfK-3Ctb-1wXQ,2988
|
120
118
|
fractal_server/app/schemas/v2/accounting.py,sha256=Wylt7uWTiDIFlHJOh4XEtYitk2FjFlmnodDrJDxcr0E,397
|
121
119
|
fractal_server/app/schemas/v2/dataset.py,sha256=9yc-tte70yPPk4CSfy2imykYVbCW8-23K499pi9z2e0,5206
|
122
|
-
fractal_server/app/schemas/v2/dumps.py,sha256=
|
120
|
+
fractal_server/app/schemas/v2/dumps.py,sha256=AhCSo4jaGyCdcNkmRvtIZ_QnIl4elu-KUAFlmP5I2rg,2261
|
121
|
+
fractal_server/app/schemas/v2/history.py,sha256=aCzr68OdNtHzNHrW43F5uxSCCcT6dMaq-_Dq9GpuJ6k,1100
|
123
122
|
fractal_server/app/schemas/v2/job.py,sha256=KhxQOfncpE_SAu7Wed8CXS2G6onh0v875GkotBvKBTY,4304
|
124
|
-
fractal_server/app/schemas/v2/manifest.py,sha256=
|
123
|
+
fractal_server/app/schemas/v2/manifest.py,sha256=8mmB0QwxEgAeGgwKD_fT-o-wFy7lb6HxNXbp17IJqNY,7281
|
125
124
|
fractal_server/app/schemas/v2/project.py,sha256=ulgCmUnX0w-0jrSjVYIT7sxeK95CSNGh2msXydhsgYI,885
|
126
|
-
fractal_server/app/schemas/v2/
|
127
|
-
fractal_server/app/schemas/v2/task.py,sha256=
|
125
|
+
fractal_server/app/schemas/v2/status_legacy.py,sha256=vc6C3Xri8222bb9OmsghMz05CNuEalO-t2s_nKo341s,954
|
126
|
+
fractal_server/app/schemas/v2/task.py,sha256=8vc8c3ZL6dJo9kyCrfKozgO_pF37BBLvD5XYIXynlEc,6551
|
128
127
|
fractal_server/app/schemas/v2/task_collection.py,sha256=dLu4sy-su5k5vDJqCZdJMW8mLT5TX2SV60l_RAvKhwY,5930
|
129
128
|
fractal_server/app/schemas/v2/task_group.py,sha256=A3SFHNHLKPJyrnDz-wbnQvycetafKltp6UsH1u-euwA,3850
|
130
129
|
fractal_server/app/schemas/v2/workflow.py,sha256=ZpM43zTMyLRnEUtkbr_J5DYP00NwjItaC8gweB7GGAA,2172
|
131
|
-
fractal_server/app/schemas/v2/workflowtask.py,sha256=
|
130
|
+
fractal_server/app/schemas/v2/workflowtask.py,sha256=rVbmNihDAJL_Sckbt1hBK2JEcb-8Xpxn3McvaomZLmQ,7429
|
132
131
|
fractal_server/app/security/__init__.py,sha256=e2cveg5hQpieGD3bSPd5GTOMthvJ-HXH3buSb9WVfEU,14096
|
133
132
|
fractal_server/app/security/signup_email.py,sha256=Xd6QYxcdmg0PHpDwmUE8XQmPcOj3Xjy5oROcIMhmltM,1472
|
134
133
|
fractal_server/app/user_settings.py,sha256=OP1yiYKtPadxwM51_Q0hdPk3z90TCN4z1BLpQsXyWiU,1316
|
@@ -199,15 +198,15 @@ fractal_server/tasks/v2/templates/4_pip_show.sh,sha256=qm1vPy6AkKhWDjCJGXS8LqCLY
|
|
199
198
|
fractal_server/tasks/v2/templates/5_get_venv_size_and_file_number.sh,sha256=q-6ZUvA6w6FDVEoSd9O63LaJ9tKZc7qAFH72SGPrd_k,284
|
200
199
|
fractal_server/tasks/v2/templates/6_pip_install_from_freeze.sh,sha256=A2y8RngEjAcRhG-_owA6P7tAdrS_AszFuGXnaeMV8u0,1122
|
201
200
|
fractal_server/tasks/v2/utils_background.py,sha256=W_RvihI1aiYPJNsPo8z4wKuA_bPs0UT2huzLihRpjU4,4248
|
202
|
-
fractal_server/tasks/v2/utils_database.py,sha256=
|
201
|
+
fractal_server/tasks/v2/utils_database.py,sha256=h4Pa-JxcVk7WA4_Pz8CxFT9sX3sA43p2rVRg7FVSgvY,967
|
203
202
|
fractal_server/tasks/v2/utils_package_names.py,sha256=RDg__xrvQs4ieeVzmVdMcEh95vGQYrv9Hfal-5EDBM8,2393
|
204
203
|
fractal_server/tasks/v2/utils_python_interpreter.py,sha256=5_wrlrTqXyo1YuLZvAW9hrSoh5MyLOzdPVUlUwM7uDQ,955
|
205
204
|
fractal_server/tasks/v2/utils_templates.py,sha256=Kc_nSzdlV6KIsO0CQSPs1w70zLyENPqJeTQEFiz4bOg,3124
|
206
205
|
fractal_server/urls.py,sha256=QjIKAC1a46bCdiPMu3AlpgFbcv6a4l3ABcd5xz190Og,471
|
207
206
|
fractal_server/utils.py,sha256=PMwrxWFxRTQRl1b9h-NRIbFGPKqpH_hXnkAT3NfZdpY,3571
|
208
207
|
fractal_server/zip_tools.py,sha256=GjDgo_sf6V_DDg6wWeBlZu5zypIxycn_l257p_YVKGc,4876
|
209
|
-
fractal_server-2.14.
|
210
|
-
fractal_server-2.14.
|
211
|
-
fractal_server-2.14.
|
212
|
-
fractal_server-2.14.
|
213
|
-
fractal_server-2.14.
|
208
|
+
fractal_server-2.14.0a8.dist-info/LICENSE,sha256=QKAharUuhxL58kSoLizKJeZE3mTCBnX6ucmz8W0lxlk,1576
|
209
|
+
fractal_server-2.14.0a8.dist-info/METADATA,sha256=9Y62LfjS5cZ88MZggxLwL2usMbt3Ny9GPiX8CBhFgpQ,4562
|
210
|
+
fractal_server-2.14.0a8.dist-info/WHEEL,sha256=7dDg4QLnNKTvwIDR9Ac8jJaAmBC_owJrckbC0jjThyA,88
|
211
|
+
fractal_server-2.14.0a8.dist-info/entry_points.txt,sha256=8tV2kynvFkjnhbtDnxAqImL6HMVKsopgGfew0DOp5UY,58
|
212
|
+
fractal_server-2.14.0a8.dist-info/RECORD,,
|
@@ -1,124 +0,0 @@
|
|
1
|
-
# from typing import Optional
|
2
|
-
# from sqlalchemy.orm import Session
|
3
|
-
# from sqlalchemy.orm.attributes import flag_modified
|
4
|
-
# from sqlmodel import select
|
5
|
-
# from fractal_server.app.db import get_sync_db
|
6
|
-
# from fractal_server.app.history.status_enum import HistoryItemImageStatus
|
7
|
-
# from fractal_server.app.models.v2 import HistoryItemV2
|
8
|
-
# from fractal_server.app.models.v2 import ImageStatus
|
9
|
-
# from fractal_server.logger import set_logger
|
10
|
-
# logger = set_logger(__name__)
|
11
|
-
# def _update_single_image_status(
|
12
|
-
# *,
|
13
|
-
# zarr_url: str,
|
14
|
-
# workflowtask_id: int,
|
15
|
-
# dataset_id: int,
|
16
|
-
# status: HistoryItemImageStatus,
|
17
|
-
# db: Session,
|
18
|
-
# commit: bool = True,
|
19
|
-
# logfile: Optional[str] = None,
|
20
|
-
# ) -> None:
|
21
|
-
# image_status = db.get(
|
22
|
-
# ImageStatus,
|
23
|
-
# (
|
24
|
-
# zarr_url,
|
25
|
-
# workflowtask_id,
|
26
|
-
# dataset_id,
|
27
|
-
# ),
|
28
|
-
# )
|
29
|
-
# if image_status is None:
|
30
|
-
# raise RuntimeError("This should have not happened")
|
31
|
-
# image_status.status = status
|
32
|
-
# if logfile is not None:
|
33
|
-
# image_status.logfile = logfile
|
34
|
-
# db.add(image_status)
|
35
|
-
# if commit:
|
36
|
-
# db.commit()
|
37
|
-
# def update_single_image(
|
38
|
-
# *,
|
39
|
-
# history_item_id: int,
|
40
|
-
# zarr_url: str,
|
41
|
-
# status: HistoryItemImageStatus,
|
42
|
-
# ) -> None:
|
43
|
-
# logger.debug(
|
44
|
-
# f"[update_single_image] {history_item_id=}, {status=}, {zarr_url=}"
|
45
|
-
# )
|
46
|
-
# # Note: thanks to `with_for_update`, a lock is acquired and kept
|
47
|
-
# # until `db.commit()`
|
48
|
-
# with next(get_sync_db()) as db:
|
49
|
-
# stm = (
|
50
|
-
# select(HistoryItemV2)
|
51
|
-
# .where(HistoryItemV2.id == history_item_id)
|
52
|
-
# .with_for_update(nowait=False)
|
53
|
-
# )
|
54
|
-
# history_item = db.execute(stm).scalar_one()
|
55
|
-
# history_item.images[zarr_url] = status
|
56
|
-
# flag_modified(history_item, "images")
|
57
|
-
# db.commit()
|
58
|
-
# _update_single_image_status(
|
59
|
-
# zarr_url=zarr_url,
|
60
|
-
# dataset_id=history_item.dataset_id,
|
61
|
-
# workflowtask_id=history_item.workflowtask_id,
|
62
|
-
# commit=True,
|
63
|
-
# status=status,
|
64
|
-
# db=db,
|
65
|
-
# )
|
66
|
-
# def update_single_image_logfile(
|
67
|
-
# *,
|
68
|
-
# history_item_id: int,
|
69
|
-
# zarr_url: str,
|
70
|
-
# logfile: str,
|
71
|
-
# ) -> None:
|
72
|
-
# logger.debug(
|
73
|
-
# "[update_single_image_logfile] "
|
74
|
-
# f"{history_item_id=}, {logfile=}, {zarr_url=}"
|
75
|
-
# )
|
76
|
-
# with next(get_sync_db()) as db:
|
77
|
-
# history_item = db.get(HistoryItemV2, history_item_id)
|
78
|
-
# image_status = db.get(
|
79
|
-
# ImageStatus,
|
80
|
-
# (
|
81
|
-
# zarr_url,
|
82
|
-
# history_item.workflowtask_id,
|
83
|
-
# history_item.dataset_id,
|
84
|
-
# ),
|
85
|
-
# )
|
86
|
-
# if image_status is None:
|
87
|
-
# raise RuntimeError("This should have not happened")
|
88
|
-
# image_status.logfile = logfile
|
89
|
-
# db.merge(image_status)
|
90
|
-
# db.commit()
|
91
|
-
# def update_all_images(
|
92
|
-
# *,
|
93
|
-
# history_item_id: int,
|
94
|
-
# status: HistoryItemImageStatus,
|
95
|
-
# logfile: Optional[str] = None,
|
96
|
-
# ) -> None:
|
97
|
-
# logger.debug(f"[update_all_images] {history_item_id=}, {status=}")
|
98
|
-
# # Note: thanks to `with_for_update`, a lock is acquired and kept
|
99
|
-
# # until `db.commit()`
|
100
|
-
# stm = (
|
101
|
-
# select(HistoryItemV2)
|
102
|
-
# .where(HistoryItemV2.id == history_item_id)
|
103
|
-
# .with_for_update(nowait=False)
|
104
|
-
# )
|
105
|
-
# with next(get_sync_db()) as db:
|
106
|
-
# history_item = db.execute(stm).scalar_one()
|
107
|
-
# new_images = {
|
108
|
-
# zarr_url: status for zarr_url in history_item.images.keys()
|
109
|
-
# }
|
110
|
-
# history_item.images = new_images
|
111
|
-
# flag_modified(history_item, "images")
|
112
|
-
# db.commit()
|
113
|
-
# # FIXME: Make this a bulk edit, if possible
|
114
|
-
# for ind, zarr_url in enumerate(history_item.images.keys()):
|
115
|
-
# _update_single_image_status(
|
116
|
-
# zarr_url=zarr_url,
|
117
|
-
# dataset_id=history_item.dataset_id,
|
118
|
-
# workflowtask_id=history_item.workflowtask_id,
|
119
|
-
# commit=False,
|
120
|
-
# status=status,
|
121
|
-
# logfile=logfile,
|
122
|
-
# db=db,
|
123
|
-
# )
|
124
|
-
# db.commit()
|
@@ -1,16 +0,0 @@
|
|
1
|
-
from pydantic import BaseModel
|
2
|
-
from pydantic import Field
|
3
|
-
|
4
|
-
from .workflowtask import WorkflowTaskStatusTypeV2
|
5
|
-
|
6
|
-
|
7
|
-
class StatusReadV2(BaseModel):
|
8
|
-
"""
|
9
|
-
Response type for the
|
10
|
-
`/project/{project_id}/status/` endpoint
|
11
|
-
"""
|
12
|
-
|
13
|
-
status: dict[
|
14
|
-
str,
|
15
|
-
WorkflowTaskStatusTypeV2,
|
16
|
-
] = Field(default_factory=dict)
|
File without changes
|
File without changes
|