Skip to content

tests: Update tests_all_options.yml to do bootc end-to-end validation#187

Merged
martinpitt merged 2 commits intolinux-system-roles:mainfrom
martinpitt:bootc-e2e
Jun 6, 2025
Merged

tests: Update tests_all_options.yml to do bootc end-to-end validation#187
martinpitt merged 2 commits intolinux-system-roles:mainfrom
martinpitt:bootc-e2e

Conversation

@martinpitt
Copy link
Contributor

@martinpitt martinpitt commented Jun 6, 2025

Move the generated file to /etc, as files in /tmp don't get included in a bootc deployment.

See https://issues.redhat.com/browse/RHEL-78157

Summary by Sourcery

Enable bootc end-to-end validation by relocating generated test files, guarding tasks with __bootc_validation, adding a QEMU deployment step, and updating metadata tags.

New Features:

  • Add a step to create a QEMU deployment via bootc-buildah-qcow.sh for buildah connections.

Enhancements:

  • Move SSH config file path from /tmp to /etc/test_ssh_config and guard relevant tasks with the __bootc_validation flag.
  • Reorder and deduplicate container and containerbuild tags in meta/main.yml.

@martinpitt martinpitt requested review from Jakuje and richm as code owners June 6, 2025 04:10
@sourcery-ai
Copy link

sourcery-ai bot commented Jun 6, 2025

Reviewer's Guide

This PR updates the test playbook to support a full bootc end-to-end validation by relocating the SSH config file into /etc, gating relevant tasks with a __bootc_validation flag, adding a QEMU deployment step for buildah connections, and adjusts Galaxy metadata to include container tags.

File-Level Changes

Change Details Files
Gate existing tests on a bootc validation flag and relocate SSH config path
  • Add when: not __bootc_validation to skip tasks during bootc validation
  • Change ssh_config_file from /tmp/ssh_config to /etc/test_ssh_config
  • Adjust slurp src path to /etc/test_ssh_config
tests/tests_all_options.yml
Add QEMU deployment step for bootc end-to-end testing
  • Insert task delegating to localhost to run bootc-buildah-qcow.sh
  • Condition this task on ansible_connection == "buildah"
  • Mark the task as changed_when: true
tests/tests_all_options.yml
Update Galaxy metadata to include container build tags
  • Move container and containerbuild tags earlier in galaxy_tags
  • Ensure container-related tags are present and correctly ordered
meta/main.yml

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

Copy link

@sourcery-ai sourcery-ai bot left a comment

Choose a reason for hiding this comment

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

Hey @martinpitt - I've reviewed your changes - here's some feedback:

  • Consider using a test-specific temporary path instead of /etc/test_ssh_config to avoid permission issues and potential conflicts with system configs.
  • Add a failed_when condition to the QEMU deployment task to catch script failures rather than always marking the task as changed.
  • Use the explicit | default(false) filter instead of d(false) for clarity and consistency in the when statements.
Here's what I looked at during the review
  • 🟢 General issues: all looks good
  • 🟢 Security: all looks good
  • 🟢 Review instructions: all looks good
  • 🟢 Testing: all looks good
  • 🟢 Documentation: all looks good

Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

Move the generated file to /etc, as files in /tmp don't get included in
a bootc deployment.

See https://issues.redhat.com/browse/RHEL-78157
@martinpitt
Copy link
Contributor Author

[citest]

@martinpitt martinpitt requested a review from spetrosi June 6, 2025 04:37
Copy link
Collaborator

@Jakuje Jakuje left a comment

Choose a reason for hiding this comment

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

lgtm

@martinpitt martinpitt merged commit 3a26af9 into linux-system-roles:main Jun 6, 2025
35 checks passed
@martinpitt martinpitt deleted the bootc-e2e branch June 6, 2025 08:12
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