Skip to content

Fix Texinfo source fallback#4577

Open
vyadavmsft wants to merge 1 commit into
mainfrom
users/vyadav/fix-texinfo-fallback
Open

Fix Texinfo source fallback#4577
vyadavmsft wants to merge 1 commit into
mainfrom
users/vyadav/fix-texinfo-fallback

Conversation

@vyadavmsft

Copy link
Copy Markdown
Collaborator

Check distro package availability before installing texinfo so images without a candidate package use the source-build fallback instead of failing during apt install.

Install only available fallback dependency packages before building from source, which keeps Ubuntu images from failing on RPM-only package names such as perl-Data-Dumper.

Description

Related Issue

Type of Change

  • Bug fix
  • New feature
  • Breaking change
  • Refactoring
  • Documentation update

Checklist

  • Description is filled in above
  • No credentials, secrets, or internal details are included
  • Peer review requested (if not, add required peer reviewers after raising PR)
  • Tests executed and results posted below

Test Validation

Key Test Cases:

Impacted LISA Features:

Tested Azure Marketplace Images:

Test Results

Image VM Size Result
PASSED / FAILED / SKIPPED

Copilot AI review requested due to automatic review settings July 6, 2026 03:28

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the Texinfo tool installation flow to avoid hard-failing on distros/images where texinfo (or source-build dependency packages) are not available from the configured package repositories, and instead falls back to building Texinfo from source.

Changes:

  • Check texinfo repo availability via Posix.is_package_in_repo() before attempting install_packages("texinfo"), and fall back to a source build when it’s not available.
  • When falling back to source, only install dependency packages that are actually available in the current distro repo (avoids failures on RPM-only names like perl-Data-Dumper on Ubuntu).
  • Refactor fallback logic into _install_from_src_with_dependencies() for reuse from both the “not in repo” path and the exception path.

Notes (PR hygiene):

  • The PR description template still has empty “Related Issue” and “Test Validation / Test Results” sections; consider linking an issue for traceability and posting the validation you ran before merge.

@github-actions

github-actions Bot commented Jul 6, 2026

Copy link
Copy Markdown

✅ AI Test Selection — PASSED

1 test case(s) selected (view run)

Marketplace image: canonical 0001-com-ubuntu-server-jammy 22_04-lts-gen2 latest

Count
✅ Passed 1
❌ Failed 0
⏭️ Skipped 0
Total 1
Test case details
Test Case Status Time (s) Message
smoke_test (lisa_0_0) ✅ PASSED 38.736

@LiliDeng

LiliDeng commented Jul 6, 2026

Copy link
Copy Markdown
Collaborator

Please provide the test matrix which you are trying to fix and provide the test results against your latest change.

Check distro package availability before installing texinfo so images without a candidate package use the source-build fallback instead of failing during apt install.

Install only available fallback dependency packages before building from source, which keeps Ubuntu images from failing on RPM-only package names such as perl-Data-Dumper.
@vyadavmsft vyadavmsft force-pushed the users/vyadav/fix-texinfo-fallback branch from 16f3405 to 7f5a8aa Compare July 6, 2026 23:56
@vyadavmsft

Copy link
Copy Markdown
Collaborator Author

Please provide the test matrix which you are trying to fix and provide the test results against your latest change.

@LiliDeng The failure this PR is trying to fix is Texinfo installation on images where the distro package is not available from the configured package repository.

Previously, the Texinfo tool tried the distro package install first and could fail during apt install texinfo when there was no install candidate, instead of falling back to building Texinfo from source. The source fallback path could also fail on Ubuntu/Debian because it attempted to install fallback dependencies that only exist on RPM-based distros, such as perl-Data-Dumper.

The fix checks package availability before installing Texinfo, so images without an available distro package use the source-build fallback. It also installs only the fallback dependency packages that are available on the current distro.

I validated the change withlsg-lisa pipeline completed successfully.

Test matrix and results: (These filed earlier)

  • GUEST Func + Perf TESTS / Dom0 - AMD SKU: 11 passed, 0 failed, 0 skipped
  • GUEST Func + Perf TESTS / Dom0 - Intel SKU: 11 passed, 0 failed, 0 skipped
  • GUEST Stress TESTS - Shard 1 / Dom0 - AMD SKU: 2 passed, 0 failed, 0 skipped
  • GUEST Stress TESTS - Shard 1 / Dom0 - Intel SKU: 2 passed, 0 failed, 0 skipped
  • GUEST Stress TESTS - Shard 2 / Dom0 - AMD SKU: 1 passed, 0 failed, 0 skipped
  • GUEST Stress TESTS - Shard 2 / Dom0 - Intel SKU: 1 passed, 0 failed, 0 skipped

Overall selected LISA result: 28 passed, 0 failed, 0 skipped.

Covered tests include:
smoke_test, verify_cpu_count, perf_tcp_single_pps_synthetic, perf_tcp_max_pps_synthetic, perf_tcp_iperf_synthetic, perf_udp_iperf_synthetic, perf_tcp_latency_synthetic, perf_tcp_ntttcp_128_connections_synthetic, perf_tcp_ntttcp_synthetic, perf_udp_1k_ntttcp_synthetic, perf_storage_generic_fio_test, stress_tlb_basic, stress_tlb_stressng, and multi_vm_stress_test.

@github-actions

github-actions Bot commented Jul 7, 2026

Copy link
Copy Markdown

✅ AI Test Selection — PASSED

1 test case(s) selected (view run)

Marketplace image: canonical 0001-com-ubuntu-server-jammy 22_04-lts-gen2 latest

Count
✅ Passed 1
❌ Failed 0
⏭️ Skipped 0
Total 1
Test case details
Test Case Status Time (s) Message
smoke_test (lisa_0_0) ✅ PASSED 56.572

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants