Skip to content

Commit fac670c

Browse files
committed
try cache repo creation
1 parent e1614d2 commit fac670c

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

scripts/release/build/image_build_process.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,18 @@
1313
DEFAULT_BUILDER_NAME = "multiarch" # Default buildx builder name
1414

1515

16+
def ensure_ecr_cache_repository(repository_name: str, region: str = "us-east-1"):
17+
ecr_client = boto3.client("ecr", region_name=region)
18+
try:
19+
ecr_client.create_repository(repositoryName=repository_name)
20+
logger.info(f"Created ECR repository: {repository_name}")
21+
except ClientError as e:
22+
if e.response['Error']['Code'] == 'RepositoryAlreadyExistsException':
23+
logger.debug(f"ECR cache repository already exists: {repository_name}")
24+
else:
25+
logger.warning(f"Failed to create ECR cache repository {repository_name}: {e}")
26+
27+
1628
def ecr_login_boto3(region: str, account_id: str):
1729
"""
1830
Fetches an auth token from ECR via boto3 and logs
@@ -108,6 +120,8 @@ def execute_docker_build(
108120
# TODO CLOUDP-335471: use env variables to configure AWS region and account ID
109121
cache_registry = f"268558157000.dkr.ecr.us-east-1.amazonaws.com/dev/cache/{cache_image_name}"
110122

123+
ensure_ecr_cache_repository(cache_registry)
124+
111125
logger.info(f"Building image: {tag}")
112126
logger.info(f"Platforms: {platforms}")
113127
logger.info(f"Dockerfile: {dockerfile}")

0 commit comments

Comments
 (0)