|
43 | 43 | DOCKER_COMPOSE_HTTP_TIMEOUT_ENV = "COMPOSE_HTTP_TIMEOUT" |
44 | 44 | DOCKER_COMPOSE_HTTP_TIMEOUT = "120" |
45 | 45 |
|
46 | | - |
47 | 46 | # Environment variables to be set during training |
48 | 47 | REGION_ENV_NAME = "AWS_REGION" |
49 | 48 | TRAINING_JOB_NAME_ENV_NAME = "TRAINING_JOB_NAME" |
@@ -256,7 +255,11 @@ def retrieve_artifacts(self, compose_data, output_data_config, job_name): |
256 | 255 | for host in self.hosts: |
257 | 256 | volumes = compose_data["services"][str(host)]["volumes"] |
258 | 257 | for volume in volumes: |
259 | | - host_dir, container_dir = volume.split(":") |
| 258 | + if re.search(r"^[A-Za-z]:", volume): |
| 259 | + unit, host_dir, container_dir = volume.split(":") |
| 260 | + host_dir = unit + ":" + host_dir |
| 261 | + else: |
| 262 | + host_dir, container_dir = volume.split(":") |
260 | 263 | if container_dir == "/opt/ml/model": |
261 | 264 | sagemaker.local.utils.recursive_copy(host_dir, model_artifacts) |
262 | 265 | elif container_dir == "/opt/ml/output": |
@@ -639,9 +642,7 @@ def __init__(self, host_dir, container_dir=None, channel=None): |
639 | 642 | if container_dir and channel: |
640 | 643 | raise ValueError("container_dir and channel cannot be declared together.") |
641 | 644 |
|
642 | | - self.container_dir = ( |
643 | | - container_dir if container_dir else os.path.join("/opt/ml/input/data", channel) |
644 | | - ) |
| 645 | + self.container_dir = container_dir if container_dir else "/opt/ml/input/data/" + channel |
645 | 646 | self.host_dir = host_dir |
646 | 647 | if platform.system() == "Darwin" and host_dir.startswith("/var"): |
647 | 648 | self.host_dir = os.path.join("/private", host_dir) |
|
0 commit comments