diff --git a/Containerfile b/Containerfile index c54dd191..4e06429e 100644 --- a/Containerfile +++ b/Containerfile @@ -41,6 +41,7 @@ apk add --no-cache --virtual .build-deps \ musl-dev \ openldap-dev apk add --no-cache \ + aria2 \ cdrkit \ coreutils \ git \ diff --git a/osism/commands/manage.py b/osism/commands/manage.py index 03db4257..1d2a53e1 100644 --- a/osism/commands/manage.py +++ b/osism/commands/manage.py @@ -468,8 +468,12 @@ def take_action(self, parsed_args): "--cloud", cloud, "--deactivate", + # One web-download attempt only: the amphora image source is + # chronically slow, so retrying web-download just wastes another + # multi-minute doomed transfer. On the first failure the default + # --prefetch on-stuck falls back to aria2 + glance-direct. "--stuck-retry", - "1", + "0", ] task_signature = openstack.image_manager.si( @@ -481,7 +485,10 @@ def take_action(self, parsed_args): f"It takes a moment until task {task.task_id} (image-manager) has been started and output is visible here." ) - return handle_task(task, wait, format="script", timeout=3600) + # A larger budget than the other image tasks: on a stuck web-download + # the image-manager falls back to aria2 + glance-direct, which adds a + # local download and staging on top of the import. + return handle_task(task, wait, format="script", timeout=5400) class Images(Command):