fractal-server 2.14.16__py3-none-any.whl → 2.15.0a1__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/models/v2/task_group.py +17 -5
- fractal_server/app/routes/admin/v2/task_group_lifecycle.py +2 -2
- fractal_server/app/routes/api/v2/__init__.py +6 -0
- fractal_server/app/routes/api/v2/task_collection.py +3 -3
- fractal_server/app/routes/api/v2/task_collection_custom.py +2 -2
- fractal_server/app/routes/api/v2/task_collection_pixi.py +236 -0
- fractal_server/app/routes/api/v2/task_group_lifecycle.py +26 -7
- fractal_server/app/schemas/v2/__init__.py +2 -1
- fractal_server/app/schemas/v2/dumps.py +1 -1
- fractal_server/app/schemas/v2/task_collection.py +1 -1
- fractal_server/app/schemas/v2/task_group.py +16 -5
- fractal_server/config.py +42 -0
- fractal_server/migrations/versions/b1e7f7a1ff71_task_group_for_pixi.py +53 -0
- fractal_server/ssh/_fabric.py +26 -0
- fractal_server/tasks/v2/local/__init__.py +3 -0
- fractal_server/tasks/v2/local/_utils.py +7 -2
- fractal_server/tasks/v2/local/collect.py +23 -24
- fractal_server/tasks/v2/local/collect_pixi.py +234 -0
- fractal_server/tasks/v2/local/deactivate.py +36 -39
- fractal_server/tasks/v2/local/deactivate_pixi.py +102 -0
- fractal_server/tasks/v2/local/reactivate.py +9 -16
- fractal_server/tasks/v2/local/reactivate_pixi.py +146 -0
- fractal_server/tasks/v2/ssh/__init__.py +3 -0
- fractal_server/tasks/v2/ssh/_utils.py +5 -5
- fractal_server/tasks/v2/ssh/collect.py +23 -28
- fractal_server/tasks/v2/ssh/collect_pixi.py +306 -0
- fractal_server/tasks/v2/ssh/deactivate.py +39 -45
- fractal_server/tasks/v2/ssh/deactivate_pixi.py +128 -0
- fractal_server/tasks/v2/ssh/reactivate.py +8 -15
- fractal_server/tasks/v2/ssh/reactivate_pixi.py +108 -0
- fractal_server/tasks/v2/templates/pixi_1_extract.sh +40 -0
- fractal_server/tasks/v2/templates/pixi_2_install.sh +48 -0
- fractal_server/tasks/v2/templates/pixi_3_post_install.sh +80 -0
- fractal_server/tasks/v2/utils_background.py +43 -8
- fractal_server/tasks/v2/utils_pixi.py +38 -0
- {fractal_server-2.14.16.dist-info → fractal_server-2.15.0a1.dist-info}/METADATA +1 -1
- {fractal_server-2.14.16.dist-info → fractal_server-2.15.0a1.dist-info}/RECORD +41 -29
- {fractal_server-2.14.16.dist-info → fractal_server-2.15.0a1.dist-info}/LICENSE +0 -0
- {fractal_server-2.14.16.dist-info → fractal_server-2.15.0a1.dist-info}/WHEEL +0 -0
- {fractal_server-2.14.16.dist-info → fractal_server-2.15.0a1.dist-info}/entry_points.txt +0 -0
@@ -1,3 +1,4 @@
|
|
1
|
+
import logging
|
1
2
|
from pathlib import Path
|
2
3
|
from typing import TypeVar
|
3
4
|
|
@@ -9,6 +10,7 @@ from fractal_server.app.schemas.v2 import TaskCreateV2
|
|
9
10
|
from fractal_server.app.schemas.v2 import TaskGroupActivityStatusV2
|
10
11
|
from fractal_server.app.schemas.v2.manifest import ManifestV2
|
11
12
|
from fractal_server.app.schemas.v2.task_group import TaskGroupActivityActionV2
|
13
|
+
from fractal_server.exceptions import UnreachableBranchError
|
12
14
|
from fractal_server.logger import get_logger
|
13
15
|
from fractal_server.logger import reset_logger_handlers
|
14
16
|
from fractal_server.utils import get_timestamp
|
@@ -23,6 +25,24 @@ def add_commit_refresh(*, obj: T, db: DBSyncSession) -> T:
|
|
23
25
|
return obj
|
24
26
|
|
25
27
|
|
28
|
+
def get_activity_and_task_group(
|
29
|
+
*,
|
30
|
+
task_group_activity_id: int,
|
31
|
+
task_group_id: int,
|
32
|
+
db: DBSyncSession,
|
33
|
+
) -> tuple[bool, TaskGroupV2, TaskGroupActivityV2]:
|
34
|
+
task_group = db.get(TaskGroupV2, task_group_id)
|
35
|
+
activity = db.get(TaskGroupActivityV2, task_group_activity_id)
|
36
|
+
if activity is None or task_group is None:
|
37
|
+
logging.error(
|
38
|
+
"Cannot find database rows with "
|
39
|
+
f"{task_group_id=} and {task_group_activity_id=}:\n"
|
40
|
+
f"{task_group=}\n{activity=}. Exit."
|
41
|
+
)
|
42
|
+
return False, None, None
|
43
|
+
return True, task_group, activity
|
44
|
+
|
45
|
+
|
26
46
|
def fail_and_cleanup(
|
27
47
|
task_group: TaskGroupV2,
|
28
48
|
task_group_activity: TaskGroupActivityV2,
|
@@ -47,11 +67,12 @@ def fail_and_cleanup(
|
|
47
67
|
reset_logger_handlers(logger)
|
48
68
|
|
49
69
|
|
50
|
-
def
|
70
|
+
def prepare_tasks_metadata(
|
51
71
|
*,
|
52
72
|
package_manifest: ManifestV2,
|
53
|
-
python_bin: Path,
|
54
73
|
package_root: Path,
|
74
|
+
python_bin: Path | None = None,
|
75
|
+
project_python_wrapper: Path | None = None,
|
55
76
|
package_version: str | None = None,
|
56
77
|
) -> list[TaskCreateV2]:
|
57
78
|
"""
|
@@ -59,10 +80,22 @@ def _prepare_tasks_metadata(
|
|
59
80
|
|
60
81
|
Args:
|
61
82
|
package_manifest:
|
62
|
-
python_bin:
|
63
83
|
package_root:
|
64
84
|
package_version:
|
85
|
+
python_bin:
|
86
|
+
project_python_wrapper:
|
65
87
|
"""
|
88
|
+
|
89
|
+
if bool(project_python_wrapper is None) == bool(python_bin is None):
|
90
|
+
raise UnreachableBranchError(
|
91
|
+
f"Either {project_python_wrapper} or {python_bin} must be set."
|
92
|
+
)
|
93
|
+
|
94
|
+
if python_bin is not None:
|
95
|
+
actual_python = python_bin
|
96
|
+
else:
|
97
|
+
actual_python = project_python_wrapper
|
98
|
+
|
66
99
|
task_list = []
|
67
100
|
for _task in package_manifest.task_list:
|
68
101
|
# Set non-command attributes
|
@@ -76,14 +109,16 @@ def _prepare_tasks_metadata(
|
|
76
109
|
# Set command attributes
|
77
110
|
if _task.executable_non_parallel is not None:
|
78
111
|
non_parallel_path = package_root / _task.executable_non_parallel
|
79
|
-
|
80
|
-
f"{
|
112
|
+
cmd_non_parallel = (
|
113
|
+
f"{actual_python.as_posix()} {non_parallel_path.as_posix()}"
|
81
114
|
)
|
115
|
+
task_attributes["command_non_parallel"] = cmd_non_parallel
|
82
116
|
if _task.executable_parallel is not None:
|
83
117
|
parallel_path = package_root / _task.executable_parallel
|
84
|
-
|
85
|
-
"
|
86
|
-
|
118
|
+
cmd_parallel = (
|
119
|
+
f"{actual_python.as_posix()} {parallel_path.as_posix()}"
|
120
|
+
)
|
121
|
+
task_attributes["command_parallel"] = cmd_parallel
|
87
122
|
# Create object
|
88
123
|
task_obj = TaskCreateV2(
|
89
124
|
**_task.model_dump(
|
@@ -0,0 +1,38 @@
|
|
1
|
+
from typing import TypedDict
|
2
|
+
|
3
|
+
SOURCE_DIR_NAME = "source_dir"
|
4
|
+
|
5
|
+
|
6
|
+
class ParsedOutput(TypedDict):
|
7
|
+
package_root: str
|
8
|
+
venv_size: str
|
9
|
+
venv_file_number: str
|
10
|
+
project_python_wrapper: str
|
11
|
+
|
12
|
+
|
13
|
+
def parse_collect_stdout(stdout: str) -> ParsedOutput:
|
14
|
+
"""
|
15
|
+
Parse standard output of `pixi/1_collect.sh`
|
16
|
+
"""
|
17
|
+
searches = [
|
18
|
+
("Package folder:", "package_root"),
|
19
|
+
("Disk usage:", "venv_size"),
|
20
|
+
("Number of files:", "venv_file_number"),
|
21
|
+
("Project Python wrapper:", "project_python_wrapper"),
|
22
|
+
]
|
23
|
+
stdout_lines = stdout.splitlines()
|
24
|
+
attributes = dict()
|
25
|
+
for search, attribute_name in searches:
|
26
|
+
matching_lines = [_line for _line in stdout_lines if search in _line]
|
27
|
+
if len(matching_lines) == 0:
|
28
|
+
raise ValueError(f"String '{search}' not found in stdout.")
|
29
|
+
elif len(matching_lines) > 1:
|
30
|
+
raise ValueError(
|
31
|
+
f"String '{search}' found too many times "
|
32
|
+
f"({len(matching_lines)})."
|
33
|
+
)
|
34
|
+
else:
|
35
|
+
actual_line = matching_lines[0]
|
36
|
+
attribute_value = actual_line.split(search)[-1].strip(" ")
|
37
|
+
attributes[attribute_name] = attribute_value
|
38
|
+
return attributes
|
@@ -1,4 +1,4 @@
|
|
1
|
-
fractal_server/__init__.py,sha256=
|
1
|
+
fractal_server/__init__.py,sha256=jqf_k5MzFRozDqpvzsTxEimwRfYyqB0UiYf2p5oD-pw,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
|
@@ -15,7 +15,7 @@ fractal_server/app/models/v2/history.py,sha256=CBN2WVg9vW5pHU1RP8TkB_nnJrwnuifCc
|
|
15
15
|
fractal_server/app/models/v2/job.py,sha256=LfpwAedMVcA_6Ne0Rr4g3tt0asAQkWz3LSPm7IwZhYc,1978
|
16
16
|
fractal_server/app/models/v2/project.py,sha256=RmU5BQR4HD6xifRndUhvPBy30wntml-giBRoEysdWXw,755
|
17
17
|
fractal_server/app/models/v2/task.py,sha256=P7nsS5mCmVyzr4WtcjoiedesqkWvkHA2cQPsMbQt-7o,1427
|
18
|
-
fractal_server/app/models/v2/task_group.py,sha256=
|
18
|
+
fractal_server/app/models/v2/task_group.py,sha256=Q78ommMWEG2Sqvg2Y8ICgYA_aGH-N7LdLbnmnDl1l1M,3841
|
19
19
|
fractal_server/app/models/v2/workflow.py,sha256=wuK9SV1TXrlYcieYLYj5fGvV3K3bW7g9jCM1uv9HHjA,1058
|
20
20
|
fractal_server/app/models/v2/workflowtask.py,sha256=tph237DXitOnzSv88rk9qgN2VmlI1smWS5fNYHR8jMo,1200
|
21
21
|
fractal_server/app/routes/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -27,9 +27,9 @@ fractal_server/app/routes/admin/v2/job.py,sha256=EOnW645RaacyNof55O_NV_4ONyb7ihM
|
|
27
27
|
fractal_server/app/routes/admin/v2/project.py,sha256=MA_LdoEuSuisSGRO43TapMuJ080y5iaUGSAUgKuuKOg,1188
|
28
28
|
fractal_server/app/routes/admin/v2/task.py,sha256=93QIbWZNnqaBhG9R9-RStDX2mpqRNN3G7BIb0KM-jeE,4312
|
29
29
|
fractal_server/app/routes/admin/v2/task_group.py,sha256=biibAvMPD2w-267eyTm3wH2s3mITjiS5gYzwCCwmLbI,7099
|
30
|
-
fractal_server/app/routes/admin/v2/task_group_lifecycle.py,sha256=
|
30
|
+
fractal_server/app/routes/admin/v2/task_group_lifecycle.py,sha256=8-CWyfyB22K-0VlbzJ1BFUqcFsflfeBKVeHRqePClfs,9222
|
31
31
|
fractal_server/app/routes/api/__init__.py,sha256=B8l6PSAhR10iZqHEiyTat-_0tkeKdrCigIE6DJGP5b8,638
|
32
|
-
fractal_server/app/routes/api/v2/__init__.py,sha256=
|
32
|
+
fractal_server/app/routes/api/v2/__init__.py,sha256=D3sRRsqkmZO6kBxUjg40q0aRDsnuXI4sOOfn0xF9JsM,2820
|
33
33
|
fractal_server/app/routes/api/v2/_aux_functions.py,sha256=P5exwdiNm0ZxtoGw4wxvm_-u8e83gXz8iYEVFuUq_cU,12792
|
34
34
|
fractal_server/app/routes/api/v2/_aux_functions_history.py,sha256=Z23xwvBaVEEQ5B-JsWZJpjj4_QqoXqHYONztnbAH6gw,4425
|
35
35
|
fractal_server/app/routes/api/v2/_aux_functions_task_lifecycle.py,sha256=GpKfw9yj01LmOAuNMTOreU1PFkCKpjK5oCt7_wp35-A,6741
|
@@ -45,10 +45,11 @@ fractal_server/app/routes/api/v2/project.py,sha256=ldMEyjtwGpX2teu85sCNWaubDFlw-
|
|
45
45
|
fractal_server/app/routes/api/v2/status_legacy.py,sha256=ZckHeBy8y21cyQ_OLY-VmkapzMhd3g9ae-qg-r4-uVo,6317
|
46
46
|
fractal_server/app/routes/api/v2/submit.py,sha256=_BDkWtFdo8-p7kZ0Oxaidei04MfuBeaEsWtwJaKZQ_Y,8781
|
47
47
|
fractal_server/app/routes/api/v2/task.py,sha256=ptS47XtxnHzk9bPNZV24Wfroo5sP19RE0-LsfX0ZvOc,7018
|
48
|
-
fractal_server/app/routes/api/v2/task_collection.py,sha256=
|
49
|
-
fractal_server/app/routes/api/v2/task_collection_custom.py,sha256=
|
48
|
+
fractal_server/app/routes/api/v2/task_collection.py,sha256=MRaf_-rI4dL6Sfn8XuDUZ-f9a_60V-ChPvPEEuzCzCc,12599
|
49
|
+
fractal_server/app/routes/api/v2/task_collection_custom.py,sha256=3EZAzTVlt3wrHAuwxfcYo7LpHefLCcQUctZuolJOQHE,6728
|
50
|
+
fractal_server/app/routes/api/v2/task_collection_pixi.py,sha256=oHTTB1gXoX2mbuQTvH7SuW4GYrGOfmb9xHZ8DwChmcE,8219
|
50
51
|
fractal_server/app/routes/api/v2/task_group.py,sha256=M96VoKcLqOpZlY0RWnsHza8jN0dzAWK9lxw87Om3Fbw,9063
|
51
|
-
fractal_server/app/routes/api/v2/task_group_lifecycle.py,sha256=
|
52
|
+
fractal_server/app/routes/api/v2/task_group_lifecycle.py,sha256=vCIAuSkepwLZw05ZLn46MOB4x6ZN_v3tXXyjv4f6rJw,10070
|
52
53
|
fractal_server/app/routes/api/v2/task_version_update.py,sha256=o8W_C0I84X0u8gAMnCvi8ChiVAKrb5WzUBuJLSuujCA,8235
|
53
54
|
fractal_server/app/routes/api/v2/workflow.py,sha256=gwMtpfUY_JiTv5_R_q1I9WNkp6nTqEVtYx8jWNJRxcU,10227
|
54
55
|
fractal_server/app/routes/api/v2/workflow_import.py,sha256=kOGDaCj0jCGK1WSYGbnUjtUg2U1YxUY9UMH-2ilqJg4,9027
|
@@ -111,24 +112,24 @@ fractal_server/app/schemas/__init__.py,sha256=stURAU_t3AOBaH0HSUbV-GKhlPKngnnIMo
|
|
111
112
|
fractal_server/app/schemas/user.py,sha256=t9nbyYjGCSOsxm9K97PDG3-9o27CsaFfhWb_L5nrjqA,1910
|
112
113
|
fractal_server/app/schemas/user_group.py,sha256=x3-kqbo0q2wTP7QI0iZ7PU_9Dr957UYrFMKqS7BXLhE,1425
|
113
114
|
fractal_server/app/schemas/user_settings.py,sha256=NpdC0Me0fgwwdfJuTSlFLCnLUjiWWzrJlPn_UPLjXnw,1862
|
114
|
-
fractal_server/app/schemas/v2/__init__.py,sha256
|
115
|
+
fractal_server/app/schemas/v2/__init__.py,sha256=iWYmNuTPjiPArgEmXHYQcDDfugLOEKAab70zEZ4gDP4,3162
|
115
116
|
fractal_server/app/schemas/v2/accounting.py,sha256=Wylt7uWTiDIFlHJOh4XEtYitk2FjFlmnodDrJDxcr0E,397
|
116
117
|
fractal_server/app/schemas/v2/dataset.py,sha256=NKCjBwGBC7mPiSlXktZAcleJsvlLY6KfNKw7Wx4Zfqk,1728
|
117
|
-
fractal_server/app/schemas/v2/dumps.py,sha256=
|
118
|
+
fractal_server/app/schemas/v2/dumps.py,sha256=MoQHjKZy-_ujSfr7XmZ6FjB_VR-zLedx9XJj_sp5xvc,2210
|
118
119
|
fractal_server/app/schemas/v2/history.py,sha256=pZiMKfh6nMWbTp5MUtrnGySPKbeRFf5tM1VLFaTgGcw,1784
|
119
120
|
fractal_server/app/schemas/v2/job.py,sha256=fPay7dLSr-skKRdVRoZig8rf_sZwUdVdHZaJ4XM8vMI,3288
|
120
121
|
fractal_server/app/schemas/v2/manifest.py,sha256=QUpXMDB8WkB1F4UK-yYmm3O8bXoHwDGURnqwn6ayO_I,6674
|
121
122
|
fractal_server/app/schemas/v2/project.py,sha256=l96-3bCfB3knhITaLj1WSyBgbzP_k8CdtvgX_5jO_fU,657
|
122
123
|
fractal_server/app/schemas/v2/status_legacy.py,sha256=eQT1zGxbkzSwd0EqclsOdZ60n1x6J3DB1CZ3m4LYyxc,955
|
123
124
|
fractal_server/app/schemas/v2/task.py,sha256=IJv8loB4kx9FBkaIHoiMsswQyq02FxvyAnHK1u074fU,4364
|
124
|
-
fractal_server/app/schemas/v2/task_collection.py,sha256=
|
125
|
-
fractal_server/app/schemas/v2/task_group.py,sha256=
|
125
|
+
fractal_server/app/schemas/v2/task_collection.py,sha256=EPGe4bTRka-Y3S3_h6Wfmstq1889Cn-5cZ9ODdnsKG8,4154
|
126
|
+
fractal_server/app/schemas/v2/task_group.py,sha256=NfgoQutaRKcrS1jpRL-s45BFXVuiabT7BvGooRXqY5k,3440
|
126
127
|
fractal_server/app/schemas/v2/workflow.py,sha256=JtjxbDO52bmY06WUMACUKpFSdJysO4DBv7wezsvODRQ,1775
|
127
128
|
fractal_server/app/schemas/v2/workflowtask.py,sha256=6eweAMyziwaoMT-7R1fVJYunIeZKzT0-7fAVgPO_FEc,3639
|
128
129
|
fractal_server/app/security/__init__.py,sha256=oJ8RVglpOvWPQY4RokiE2YA72Nqo42dZEjywWTt8xr8,14032
|
129
130
|
fractal_server/app/security/signup_email.py,sha256=Xd6QYxcdmg0PHpDwmUE8XQmPcOj3Xjy5oROcIMhmltM,1472
|
130
131
|
fractal_server/app/user_settings.py,sha256=OP1yiYKtPadxwM51_Q0hdPk3z90TCN4z1BLpQsXyWiU,1316
|
131
|
-
fractal_server/config.py,sha256=
|
132
|
+
fractal_server/config.py,sha256=T9TbGbKrQqY2jGEGyKW78mVPPYajfypzWk7YxDdFIxg,27205
|
132
133
|
fractal_server/data_migrations/2_14_10.py,sha256=gMRR5QB0SDv0ToEiXVLg1VrHprM_Ii-9O1Kg-ZF-YhY,1599
|
133
134
|
fractal_server/data_migrations/README.md,sha256=_3AEFvDg9YkybDqCLlFPdDmGJvr6Tw7HRI14aZ3LOIw,398
|
134
135
|
fractal_server/data_migrations/tools.py,sha256=LeMeASwYGtEqd-3wOLle6WARdTGAimoyMmRbbJl-hAM,572
|
@@ -169,6 +170,7 @@ fractal_server/migrations/versions/9fd26a2b0de4_add_workflow_timestamp_created.p
|
|
169
170
|
fractal_server/migrations/versions/a7f4d6137b53_add_workflow_dump_to_applyworkflow.py,sha256=ekDUML7ILpmdoqEclKbEUdyLi4uw9HSG_sTjG2hp_JE,867
|
170
171
|
fractal_server/migrations/versions/af1ef1c83c9b_add_accounting_tables.py,sha256=BftudWuSGvKGBzIL5AMb3yWkgTAuaKPBGsYcOzp_gLQ,1899
|
171
172
|
fractal_server/migrations/versions/af8673379a5c_drop_old_filter_columns.py,sha256=9sLd0F7nO5chHHm7RZ4wBA-9bvWomS-av_odKwODADM,1551
|
173
|
+
fractal_server/migrations/versions/b1e7f7a1ff71_task_group_for_pixi.py,sha256=loDrqBB-9U3vqLKePEeJy4gK4EuPs_1F345mdrnoCt0,1293
|
172
174
|
fractal_server/migrations/versions/c90a7c76e996_job_id_in_history_run.py,sha256=Y1cPwmFOZ4mx3v2XZM6adgu8u0L0VD_R4ADURyMb2ro,1102
|
173
175
|
fractal_server/migrations/versions/d256a7379ab8_taskgroup_activity_and_venv_info_to_.py,sha256=HN3_Pk8G81SzdYjg4K1RZAyjKSlsZGvcYE2nWOUbwxQ,3861
|
174
176
|
fractal_server/migrations/versions/d4fe3708d309_make_applyworkflow_workflow_dump_non_.py,sha256=6cHEZFuTXiQg9yu32Y3RH1XAl71av141WQ6UMbiITIg,949
|
@@ -182,31 +184,41 @@ fractal_server/migrations/versions/f384e1c0cf5d_drop_task_default_args_columns.p
|
|
182
184
|
fractal_server/migrations/versions/fbce16ff4e47_new_history_items.py,sha256=TDWCaIoM0Q4SpRWmR9zr_rdp3lJXhCfBPTMhtrP5xYE,3950
|
183
185
|
fractal_server/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
184
186
|
fractal_server/ssh/__init__.py,sha256=sVUmzxf7_DuXG1xoLQ1_00fo5NPhi2LJipSmU5EAkPs,124
|
185
|
-
fractal_server/ssh/_fabric.py,sha256=
|
187
|
+
fractal_server/ssh/_fabric.py,sha256=3Q0nlXctEXtRspQvg00wzCOyYK-0fAJlCowQuXEMk9I,25118
|
186
188
|
fractal_server/string_tools.py,sha256=qLB5u6-4QxXPiZrUeWn_cEo47axj4OXFzDd47kNTIWw,1847
|
187
189
|
fractal_server/syringe.py,sha256=3YJeIALH-wibuJ9R5VMNYUWh7x1-MkWT0SqGcWG5MY8,2795
|
188
190
|
fractal_server/tasks/__init__.py,sha256=kadmVUoIghl8s190_Tt-8f-WBqMi8u8oU4Pvw39NHE8,23
|
189
191
|
fractal_server/tasks/utils.py,sha256=V7dj8o2AnoHhGSTYlqJHcRFhCIpmOrMOUhtiE_DvRVA,291
|
190
192
|
fractal_server/tasks/v2/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
191
|
-
fractal_server/tasks/v2/local/__init__.py,sha256=
|
192
|
-
fractal_server/tasks/v2/local/_utils.py,sha256=
|
193
|
-
fractal_server/tasks/v2/local/collect.py,sha256=
|
194
|
-
fractal_server/tasks/v2/local/
|
195
|
-
fractal_server/tasks/v2/local/
|
196
|
-
fractal_server/tasks/v2/
|
197
|
-
fractal_server/tasks/v2/
|
198
|
-
fractal_server/tasks/v2/
|
199
|
-
fractal_server/tasks/v2/ssh/
|
200
|
-
fractal_server/tasks/v2/ssh/
|
193
|
+
fractal_server/tasks/v2/local/__init__.py,sha256=S842wRersYKBKjc7xbmj0ov8b5i1YuCHa2f_yYuxcaI,312
|
194
|
+
fractal_server/tasks/v2/local/_utils.py,sha256=n-w1IqgOTeeXLE0LoHBixrU7kkg-eYEPWepur6g7DQA,2664
|
195
|
+
fractal_server/tasks/v2/local/collect.py,sha256=OIqvvXqI631MjHDGxYj3a7AmC0FhMZ2v2LD3RSZ18wU,12000
|
196
|
+
fractal_server/tasks/v2/local/collect_pixi.py,sha256=0vHDSq34VMFExz_TX7hwd0WrXilIEvfHtrs107zjX9U,9847
|
197
|
+
fractal_server/tasks/v2/local/deactivate.py,sha256=jaJ-Ejq29JQTZpiQjWHCRf2yUPZUbnjvaQrqnNkmFuo,9836
|
198
|
+
fractal_server/tasks/v2/local/deactivate_pixi.py,sha256=S3ipLVwpzkpGpSKVsDBdiv3RBt0DsVL_sGux3I5aSg8,3597
|
199
|
+
fractal_server/tasks/v2/local/reactivate.py,sha256=ZZhwyoQQ8Lzkk18BB4l3pr8x8VI-MnZSoClKnMvTy14,5860
|
200
|
+
fractal_server/tasks/v2/local/reactivate_pixi.py,sha256=MRixXYbQPq3Cc47r0bBQc-4Spj8B1dgqn1uuQKrlPQA,5317
|
201
|
+
fractal_server/tasks/v2/ssh/__init__.py,sha256=vX5aIM9Hbn2T_cIP_LrZ5ekRqJzYm_GSfp-4Iv7kqeI,300
|
202
|
+
fractal_server/tasks/v2/ssh/_utils.py,sha256=VAagoseIQW_fSsbwLencqQGyPflQii-Tvzk-r58g478,2834
|
203
|
+
fractal_server/tasks/v2/ssh/collect.py,sha256=4PwHLEBjY6CV0URHfin47YXPQnhcoizBug2-Syh1CKQ,14543
|
204
|
+
fractal_server/tasks/v2/ssh/collect_pixi.py,sha256=C1hJE8GcROLFfPOT2YnmCDfCvO8jtaSsUzWlvxvSCQc,13273
|
205
|
+
fractal_server/tasks/v2/ssh/deactivate.py,sha256=A4v9pcualcGD7l-eWcnMbM0N0HEsectHFA9lJnDXlM0,12639
|
206
|
+
fractal_server/tasks/v2/ssh/deactivate_pixi.py,sha256=qksD9ccpjy0v8ckhbZUfcuFVJf5iL25nj6wHNqvDkUg,4947
|
207
|
+
fractal_server/tasks/v2/ssh/reactivate.py,sha256=IWekB37oCWzqiFvHe2ncsvL1qgM9RVCmqe3CMBaz5L8,8472
|
208
|
+
fractal_server/tasks/v2/ssh/reactivate_pixi.py,sha256=khOJuLon3l_Vj6whJWkcw7w0rnUsp6cq2fIdTTsZuFY,3789
|
201
209
|
fractal_server/tasks/v2/templates/1_create_venv.sh,sha256=PK0jdHKtQpda1zULebBaVPORt4t6V17wa4N1ohcj5ac,548
|
202
210
|
fractal_server/tasks/v2/templates/2_pip_install.sh,sha256=jMJPQJXHKznO6fxOOXtFXKPdCmTf1VLLWj_JL_ZdKxo,1644
|
203
211
|
fractal_server/tasks/v2/templates/3_pip_freeze.sh,sha256=JldREScEBI4cD_qjfX4UK7V4aI-FnX9ZvVNxgpSOBFc,168
|
204
212
|
fractal_server/tasks/v2/templates/4_pip_show.sh,sha256=qm1vPy6AkKhWDjCJGXS8LqCLYO3KsAyRK325ZsFcF6U,1747
|
205
213
|
fractal_server/tasks/v2/templates/5_get_venv_size_and_file_number.sh,sha256=q-6ZUvA6w6FDVEoSd9O63LaJ9tKZc7qAFH72SGPrd_k,284
|
206
214
|
fractal_server/tasks/v2/templates/6_pip_install_from_freeze.sh,sha256=A2y8RngEjAcRhG-_owA6P7tAdrS_AszFuGXnaeMV8u0,1122
|
207
|
-
fractal_server/tasks/v2/
|
215
|
+
fractal_server/tasks/v2/templates/pixi_1_extract.sh,sha256=1Z6sd_fTzqQkOfbFswaPZBNLUyv-OrS4euGlcoi8ces,1097
|
216
|
+
fractal_server/tasks/v2/templates/pixi_2_install.sh,sha256=lvqIUH3zVr2fhZfoEwjBqAzvYhX9fID6Cea-fPTHbOI,1315
|
217
|
+
fractal_server/tasks/v2/templates/pixi_3_post_install.sh,sha256=SfXl0l4wY1ygr-DErbaXrgg24UFU7wsz1O8zgbHV0NE,2618
|
218
|
+
fractal_server/tasks/v2/utils_background.py,sha256=_62JAee3DltnQn14HVGfFosssgiDTyuzFkPbw2RNB8M,4575
|
208
219
|
fractal_server/tasks/v2/utils_database.py,sha256=yi7793Uue32O59OBVUgomO42oUrVKdSKXoShBUNDdK0,1807
|
209
220
|
fractal_server/tasks/v2/utils_package_names.py,sha256=RDg__xrvQs4ieeVzmVdMcEh95vGQYrv9Hfal-5EDBM8,2393
|
221
|
+
fractal_server/tasks/v2/utils_pixi.py,sha256=QrRVtN8SZM_ZDoRadXK98R27irOvTJuZO4c_mCfJ92A,1221
|
210
222
|
fractal_server/tasks/v2/utils_python_interpreter.py,sha256=5_wrlrTqXyo1YuLZvAW9hrSoh5MyLOzdPVUlUwM7uDQ,955
|
211
223
|
fractal_server/tasks/v2/utils_templates.py,sha256=Kc_nSzdlV6KIsO0CQSPs1w70zLyENPqJeTQEFiz4bOg,3124
|
212
224
|
fractal_server/types/__init__.py,sha256=aA_8J1xXzuiLqpwO_Qf18-qzaRcYkHzevhH_T-diXWM,2026
|
@@ -217,8 +229,8 @@ fractal_server/types/validators/_workflow_task_arguments_validators.py,sha256=HL
|
|
217
229
|
fractal_server/urls.py,sha256=QjIKAC1a46bCdiPMu3AlpgFbcv6a4l3ABcd5xz190Og,471
|
218
230
|
fractal_server/utils.py,sha256=Vn35lApt1T1J8nc09sAVqd10Cy0sa3dLipcljI-hkuk,2185
|
219
231
|
fractal_server/zip_tools.py,sha256=tqz_8f-vQ9OBRW-4OQfO6xxY-YInHTyHmZxU7U4PqZo,4885
|
220
|
-
fractal_server-2.
|
221
|
-
fractal_server-2.
|
222
|
-
fractal_server-2.
|
223
|
-
fractal_server-2.
|
224
|
-
fractal_server-2.
|
232
|
+
fractal_server-2.15.0a1.dist-info/LICENSE,sha256=QKAharUuhxL58kSoLizKJeZE3mTCBnX6ucmz8W0lxlk,1576
|
233
|
+
fractal_server-2.15.0a1.dist-info/METADATA,sha256=BjMlnSvVc1DYozWmqOI19lWcVATlbEG_ELwzyvo4Hlc,4245
|
234
|
+
fractal_server-2.15.0a1.dist-info/WHEEL,sha256=7dDg4QLnNKTvwIDR9Ac8jJaAmBC_owJrckbC0jjThyA,88
|
235
|
+
fractal_server-2.15.0a1.dist-info/entry_points.txt,sha256=8tV2kynvFkjnhbtDnxAqImL6HMVKsopgGfew0DOp5UY,58
|
236
|
+
fractal_server-2.15.0a1.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|