in src/utils.py [0:0]
def fetch_dlc_images_for_test_jobs(images, use_latest_additional_tag=False):
"""
use the JobParamters.run_test_types values to pass on image ecr urls to each test type.
:param images: list
:return: dictionary
"""
DLC_IMAGES = {
"sagemaker": [],
"sagemaker-efa": [],
"sagemaker-rc": [],
"sagemaker-benchmark": [],
"ecs": [],
"eks": [],
"ec2": [],
"ec2-benchmark": [],
"sanity": [],
"security": [],
"autopr": [],
}
build_enabled = is_build_enabled()
for docker_image in images:
if not docker_image.is_test_promotion_enabled:
continue
use_preexisting_images = (
not build_enabled
) and docker_image.build_status == constants.NOT_BUILT
if docker_image.build_status == constants.SUCCESS or use_preexisting_images:
ecr_url_to_test = docker_image.ecr_url
if use_latest_additional_tag and len(docker_image.additional_tags) > 0:
ecr_url_to_test = f"{docker_image.repository}:{docker_image.additional_tags[-1]}"
# Set up tests on all platforms
for test_platform in DLC_IMAGES:
DLC_IMAGES[test_platform].append(ecr_url_to_test)
for test_type in DLC_IMAGES:
test_images = DLC_IMAGES[test_type]
if test_images:
DLC_IMAGES[test_type] = list(set(test_images))
return DLC_IMAGES