diff --git a/infra/base-images/base-image/Dockerfile b/infra/base-images/base-image/Dockerfile index 3e0ad0fd02c6..c14adff5e411 100644 --- a/infra/base-images/base-image/Dockerfile +++ b/infra/base-images/base-image/Dockerfile @@ -16,7 +16,7 @@ # Base image for all other images. -ARG parent_image=ubuntu:20.04 +ARG parent_image=ubuntu:20.04@sha256:4a45212e9518f35983a976eead0de5eecc555a2f047134e9dd2cfc589076a00d FROM $parent_image diff --git a/infra/build/functions/build_and_push_test_images.py b/infra/build/functions/build_and_push_test_images.py index fee95e9d7970..64da29f1d811 100755 --- a/infra/build/functions/build_and_push_test_images.py +++ b/infra/build/functions/build_and_push_test_images.py @@ -99,7 +99,7 @@ def gcb_build_and_push_images(test_image_suffix): directory = os.path.join('infra', 'base-images', base_image) step = build_lib.get_docker_build_step([main_tag, test_tag], directory, - buildkit_cache_image=test_tag, + use_buildkit_cache=True, src_root='.') steps.append(step) diff --git a/infra/build/functions/build_lib.py b/infra/build/functions/build_lib.py index c22d8dc3158c..bfdb3f833d8c 100644 --- a/infra/build/functions/build_lib.py +++ b/infra/build/functions/build_lib.py @@ -371,7 +371,7 @@ def _make_image_name_architecture_specific(image_name, architecture): def get_docker_build_step(image_names, directory, - buildkit_cache_image=None, + use_buildkit_cache=False, src_root='oss-fuzz', architecture='x86_64'): """Returns the docker build step.""" @@ -398,17 +398,15 @@ def get_docker_build_step(image_names, 'args': args, 'dir': directory, } + # Handle buildkit args # Note that we mutate "args" after making it a value in step. - - if buildkit_cache_image is not None: + if use_buildkit_cache: env = ['DOCKER_BUILDKIT=1'] step['env'] = env - assert buildkit_cache_image in args - additional_args = [ - '--build-arg', 'BUILDKIT_INLINE_CACHE=1', '--cache-from', - buildkit_cache_image - ] - args.extend(additional_args) + args.extend(['--build-arg', 'BUILDKIT_INLINE_CACHE=1']) + for image in image_names: + args.extend(['--cache-from', image]) + args.append('.') return step