Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 17 additions & 13 deletions tests/integ/sagemaker/conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -176,7 +176,7 @@ def conda_env_yml():
os.remove(conda_yml_file_name)


def _build_container(sagemaker_session, py_version, docker_templete):
def _build_container(sagemaker_session, py_version, docker_template):
"""Build a dummy test container locally and push a container to an ecr repo"""

region = sagemaker_session.boto_region_name
Expand All @@ -189,9 +189,9 @@ def _build_container(sagemaker_session, py_version, docker_templete):
print("building source archive...")
source_archive = _generate_sagemaker_sdk_tar(tmpdir)
with open(os.path.join(tmpdir, "Dockerfile"), "w") as file:
file.writelines(
docker_templete.format(py_version=py_version, source_archive=source_archive)
)
content = docker_template.format(py_version=py_version, source_archive=source_archive)
print(f"Dockerfile contents: \n{content}\n")
file.writelines(content)

docker_client = docker.from_env()

Expand All @@ -209,6 +209,7 @@ def _build_container(sagemaker_session, py_version, docker_templete):
raise

if _is_repository_exists(ecr_client, REPO_NAME):
print("pushing to session configured account id!")
sts_client = sagemaker_session.boto_session.client(
"sts", region_name=region, endpoint_url=sts_regional_endpoint(region)
)
Expand All @@ -218,6 +219,7 @@ def _build_container(sagemaker_session, py_version, docker_templete):
account_id, sagemaker_session.boto_region_name, REPO_NAME, image_tag
)
else:
print(f"pushing to account id: {REPO_ACCOUNT_ID}")
ecr_image = _ecr_image_uri(
REPO_ACCOUNT_ID,
sagemaker_session.boto_region_name,
Expand All @@ -232,17 +234,17 @@ def _build_container(sagemaker_session, py_version, docker_templete):
return ecr_image


def _build_auto_capture_client_container(py_version, docker_templete):
def _build_auto_capture_client_container(py_version, docker_template):
"""Build a test docker container that will act as a client for auto_capture tests"""
with _tmpdir() as tmpdir:
print("building docker image locally in ", tmpdir)
print("building source archive...")
source_archive = _generate_sdk_tar_with_public_version(tmpdir)
_move_auto_capture_test_file(tmpdir)
with open(os.path.join(tmpdir, "Dockerfile"), "w") as file:
file.writelines(
docker_templete.format(py_version=py_version, source_archive=source_archive)
)
content = docker_template.format(py_version=py_version, source_archive=source_archive)
print(f"Dockerfile contents: \n{content}\n")
file.writelines(content)

docker_client = docker.from_env()

Expand Down Expand Up @@ -276,11 +278,13 @@ def _generate_sagemaker_sdk_tar(destination_folder):
"""
Run setup.py sdist to generate the PySDK tar file
"""
subprocess.run(
f"python3 setup.py egg_info --egg-base {destination_folder} sdist -d {destination_folder} -k",
shell=True,
check=True,
)
command = f"python3 setup.py egg_info --egg-base {destination_folder} sdist -d {destination_folder} -k"
print(f"Running command: {command}")
result = subprocess.run(command, shell=True, check=True, capture_output=True)
if result.returncode != 0:
print(f"Command failed with return code: {result.returncode}")
print(f"Standard output: {result.stdout.decode()}")
print(f"Standard error: {result.stderr.decode()}")
destination_folder_contents = os.listdir(destination_folder)
source_archive = [file for file in destination_folder_contents if file.endswith("tar.gz")][0]

Expand Down