mirror of
https://github.com/OpenHands/OpenHands.git
synced 2025-12-26 05:48:36 +08:00
fix(runtime build): only check for image exist on exact hash tag (#4152)
This commit is contained in:
parent
04643d6f3c
commit
3cf794faef
@ -60,7 +60,7 @@ class DockerRuntimeBuilder(RuntimeBuilder):
|
||||
target_image_tag = tags[1].split(':')[1] if len(tags) > 1 else None
|
||||
|
||||
# Check if the image exists and pull if necessary
|
||||
self.image_exists(target_image_repo)
|
||||
self.image_exists(target_image_hash_name)
|
||||
|
||||
buildx_cmd = [
|
||||
'docker',
|
||||
@ -186,9 +186,7 @@ class DockerRuntimeBuilder(RuntimeBuilder):
|
||||
return True
|
||||
except docker.errors.ImageNotFound:
|
||||
if not pull_from_repo:
|
||||
logger.debug(
|
||||
f'Image {image_name} not found locally'
|
||||
)
|
||||
logger.debug(f'Image {image_name} not found locally')
|
||||
return False
|
||||
try:
|
||||
logger.debug(
|
||||
@ -197,8 +195,15 @@ class DockerRuntimeBuilder(RuntimeBuilder):
|
||||
|
||||
layers: dict[str, dict[str, str]] = {}
|
||||
previous_layer_count = 0
|
||||
|
||||
if ':' in image_name:
|
||||
image_repo, image_tag = image_name.split(':', 1)
|
||||
else:
|
||||
image_repo = image_name
|
||||
image_tag = None
|
||||
|
||||
for line in self.docker_client.api.pull(
|
||||
image_name, stream=True, decode=True
|
||||
image_repo, tag=image_tag, stream=True, decode=True
|
||||
):
|
||||
self._output_build_progress(line, layers, previous_layer_count)
|
||||
previous_layer_count = len(layers)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user