|
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