Skip to content

Commit c71bf38

Browse files
committed
plugins/vmimage: Avoid network calls when listing cached images
In list_downloaded_images(), prevent unnecessary network calls by setting provider._best_version from metadata after creating the provider, and using metadata values directly instead of provider properties which may trigger network lookups. This fixes cascading failures where listing cached non-Fedora images would trigger network calls to Fedora servers. Reference: avocado-framework#6266 Assisted-By: Cursor-Claude-4-Sonnet Signed-off-by: Harvey Lynden <hlynden@redhat.com>
1 parent 33bb0da commit c71bf38

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

avocado/plugins/vmimage.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,14 +40,19 @@ def list_downloaded_images():
4040
metadata["build"],
4141
metadata["arch"],
4242
)
43+
# Set _best_version to prevent network calls
44+
# when accessing provider.version or file_name
45+
provider._best_version = metadata["version"]
4346
break
4447
if provider is not None:
4548
for image in files:
4649
if re.match(provider.file_name, image):
50+
# Use metadata values directly to avoid
51+
# network calls from provider.version property
4752
data = {
4853
"name": provider.name,
49-
"version": provider.version,
50-
"arch": provider.arch,
54+
"version": metadata["version"],
55+
"arch": metadata["arch"],
5156
"file": os.path.join(root, image),
5257
}
5358
images.append(data)

0 commit comments

Comments
 (0)