coiled 1.130.4.dev15__tar.gz → 1.130.5.dev1__tar.gz
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.
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/PKG-INFO +1 -1
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/run.py +10 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/v2/cluster.py +6 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/v2/core.py +2 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/.gitignore +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/LICENSE +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/README.md +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/__init__.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/__main__.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/analytics.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/auth.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/batch.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/capture_environment.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/__init__.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/batch/__init__.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/batch/list.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/batch/logs.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/batch/run.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/batch/status.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/batch/util.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/batch/wait.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/cluster/__init__.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/cluster/azure_logs.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/cluster/better_logs.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/cluster/crud.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/cluster/get_address.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/cluster/list.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/cluster/logs.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/cluster/metrics.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/cluster/ssh.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/cluster/utils.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/config.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/core.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/curl.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/diagnostics.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/env.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/file.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/hello/__init__.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/hello/examples/__init__.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/hello/examples/exit.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/hello/examples/hello_world.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/hello/examples/nyc_parquet.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/hello/examples/pytorch.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/hello/examples/xarray_nwm.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/hello/hello.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/hello/scripts/fill_ipython.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/hello/scripts/nyc_parquet.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/hello/scripts/pytorch.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/hello/scripts/xarray_nwm.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/hello/utils.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/login.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/mpi.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/notebook/__init__.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/notebook/notebook.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/package_sync.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/prefect.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/prefect_serve.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/setup/__init__.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/setup/amp.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/setup/aws.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/setup/azure.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/setup/entry.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/setup/gcp.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/setup/prometheus.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/setup/util.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/sync.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cli/utils.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/cluster.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/coiled.yaml +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/compatibility.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/config.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/context.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/core.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/credentials/__init__.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/credentials/aws.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/credentials/google.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/errors.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/exceptions.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/extensions/__init__.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/extensions/prefect/__init__.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/extensions/prefect/runners.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/extensions/prefect/workers.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/filestore.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/function.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/plugins.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/prefect.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/pypi_conda_map.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/scan.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/software.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/software_utils.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/spans.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/spark.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/types.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/utils.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/v2/__init__.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/v2/cluster_comms.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/v2/cwi_log_link.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/v2/states.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/v2/widgets/__init__.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/v2/widgets/interface.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/v2/widgets/rich.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/v2/widgets/util.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/coiled/websockets.py +0 -0
- {coiled-1.130.4.dev15 → coiled-1.130.5.dev1}/pyproject.toml +0 -0
|
@@ -570,6 +570,12 @@ def get_entrypoint(connection, container_name) -> str:
|
|
|
570
570
|
default=None,
|
|
571
571
|
help="Non-default value for shm_size (for example, '3 GiB').",
|
|
572
572
|
)
|
|
573
|
+
@click.option(
|
|
574
|
+
"--skip-ssd-mount",
|
|
575
|
+
is_flag=True,
|
|
576
|
+
default=None,
|
|
577
|
+
help="Don't automatically mount SSD/NVMe (if any) to ``/scratch``.",
|
|
578
|
+
)
|
|
573
579
|
@click.option(
|
|
574
580
|
"--filestore",
|
|
575
581
|
"filestore_names",
|
|
@@ -607,6 +613,7 @@ def run(
|
|
|
607
613
|
package_sync_strict,
|
|
608
614
|
package_sync_conda_extras,
|
|
609
615
|
docker_shm_size,
|
|
616
|
+
skip_ssd_mount,
|
|
610
617
|
filestore_names,
|
|
611
618
|
command,
|
|
612
619
|
):
|
|
@@ -644,6 +651,7 @@ def run(
|
|
|
644
651
|
package_sync_conda_extras=package_sync_conda_extras,
|
|
645
652
|
docker_shm_size=docker_shm_size,
|
|
646
653
|
filestore_names=filestore_names,
|
|
654
|
+
skip_ssd_mount=skip_ssd_mount,
|
|
647
655
|
)
|
|
648
656
|
sys.exit(info["exit_code"])
|
|
649
657
|
|
|
@@ -682,6 +690,7 @@ def start_run(
|
|
|
682
690
|
package_sync_conda_extras: List[str] | None = None,
|
|
683
691
|
docker_shm_size: str | None = None,
|
|
684
692
|
filestore_names: list[str] | None = None,
|
|
693
|
+
skip_ssd_mount: bool | None = None,
|
|
685
694
|
):
|
|
686
695
|
runtime_env_dict = dict_from_key_val_list(env)
|
|
687
696
|
tags = dict_from_key_val_list(tag)
|
|
@@ -778,6 +787,7 @@ def start_run(
|
|
|
778
787
|
"package_sync_conda_extras": package_sync_conda_extras,
|
|
779
788
|
"backend_options": {"docker_shm_size": docker_shm_size} if docker_shm_size else None,
|
|
780
789
|
"unset_single_threading_variables": True,
|
|
790
|
+
"skip_ssd_mount": skip_ssd_mount,
|
|
781
791
|
"filestores_to_attach": filestores_to_attach,
|
|
782
792
|
}
|
|
783
793
|
cluster_kwargs["name"] = name or f"run-{short_random_string()}"
|
|
@@ -210,6 +210,7 @@ class ClusterKwargs(TypedDict, total=False):
|
|
|
210
210
|
scheduler_sidecars: list[dict] | None
|
|
211
211
|
worker_sidecars: list[dict] | None
|
|
212
212
|
pause_on_exit: bool | None
|
|
213
|
+
skip_ssd_mount: bool | None
|
|
213
214
|
filestores_to_attach: list[dict] | None
|
|
214
215
|
|
|
215
216
|
|
|
@@ -479,6 +480,8 @@ class Cluster(DistributedCluster, Generic[IsAsynchronous]):
|
|
|
479
480
|
Like ``scheduler_sidecars``, but run on worker VMs instead of scheduler.
|
|
480
481
|
pause_on_exit
|
|
481
482
|
Pause the cluster instead of shutting it down when exiting.
|
|
483
|
+
skip_ssd_mount
|
|
484
|
+
Don't automatically mount SSD/NVMe (if any) to ``/scratch``.
|
|
482
485
|
filestores_to_attach
|
|
483
486
|
List of filestores to attach (specified as ``{"id": id, "input": True, "output": True}``, not name).
|
|
484
487
|
"""
|
|
@@ -566,6 +569,7 @@ class Cluster(DistributedCluster, Generic[IsAsynchronous]):
|
|
|
566
569
|
scheduler_sidecars: list[dict] | None = None,
|
|
567
570
|
worker_sidecars: list[dict] | None = None,
|
|
568
571
|
pause_on_exit: bool | None = None,
|
|
572
|
+
skip_ssd_mount: bool | None = None,
|
|
569
573
|
filestores_to_attach: list[dict] | None = None,
|
|
570
574
|
):
|
|
571
575
|
self.pause_on_exit = pause_on_exit
|
|
@@ -866,6 +870,7 @@ class Cluster(DistributedCluster, Generic[IsAsynchronous]):
|
|
|
866
870
|
self._asynchronous = asynchronous
|
|
867
871
|
self._is_coiled_hosted = False
|
|
868
872
|
self.shutdown_on_close = shutdown_on_close
|
|
873
|
+
self.skip_ssd_mount = skip_ssd_mount
|
|
869
874
|
|
|
870
875
|
self.environ = normalize_environ(environ)
|
|
871
876
|
aws_default_region = self._get_aws_default_region()
|
|
@@ -1622,6 +1627,7 @@ class Cluster(DistributedCluster, Generic[IsAsynchronous]):
|
|
|
1622
1627
|
worker_sidecars=self.worker_sidecars,
|
|
1623
1628
|
host_setup_script_content=self.host_setup_script_content,
|
|
1624
1629
|
pause_on_exit=self.pause_on_exit,
|
|
1630
|
+
skip_ssd_mount=self.skip_ssd_mount,
|
|
1625
1631
|
filestores_to_attach=self.filestores_to_attach,
|
|
1626
1632
|
cluster_timeout_seconds=self.cluster_timeout_seconds,
|
|
1627
1633
|
)
|
|
@@ -652,6 +652,7 @@ class CloudV2(OldCloud, Generic[IsAsynchronous]):
|
|
|
652
652
|
worker_sidecars: list[dict] | None = None,
|
|
653
653
|
host_setup_script_content: str | None = None,
|
|
654
654
|
pause_on_exit: bool | None = None,
|
|
655
|
+
skip_ssd_mount: bool | None = None,
|
|
655
656
|
cluster_timeout_seconds: int | None = None,
|
|
656
657
|
filestores_to_attach: list[dict] | None = None,
|
|
657
658
|
) -> Tuple[int, bool]:
|
|
@@ -693,6 +694,7 @@ class CloudV2(OldCloud, Generic[IsAsynchronous]):
|
|
|
693
694
|
"worker_sidecars": worker_sidecars,
|
|
694
695
|
"host_setup_script": host_setup_script_content,
|
|
695
696
|
"pause_on_exit": pause_on_exit,
|
|
697
|
+
"skip_ssd_mount": skip_ssd_mount,
|
|
696
698
|
"cluster_timeout_seconds": cluster_timeout_seconds,
|
|
697
699
|
"coiled_cloud_env_image": dask.config.get("coiled.cloud-env-image", None),
|
|
698
700
|
"filestores_to_attach": filestores_to_attach,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|