Skip to content

fix: Reboot transactional systems when packages are staged but not live - #348

Merged
richm merged 1 commit into
linux-system-roles:mainfrom
HVSharma12:fix/suse-transactional-update
Oct 8, 2026
Merged

richm merged 1 commit into
linux-system-roles:mainfrom
HVSharma12:fix/suse-transactional-update

Conversation

@HVSharma12

Copy link
Copy Markdown
Contributor

Enhancement:
On transactional update systems, also trigger the reboot handling when the kernel_settings packages are installed but not live yet (rpm -q --whatprovides), and make the reboot condition null-safe.

Reason:
The install is only staged until reboot, so is changed is true only in the run that staged it. After a run with kernel_settings_transactional_update_reboot_ok unset or false, a re-run with true reports ok and skips the reboot. None | bool is also deprecated in newer ansible-core.

Result:
A re-run reboots as expected. Non-transactional systems are unaffected. Verified on SLES 16.1 Immutable.

Issue Tracker Tickets (Jira or BZ if any): na

On a transactional system the package install is only staged, so a re-run after an unset or false kernel_settings_transactional_update_reboot_ok reports ok and never reboots. Also check whether the packages are live (rpm -q --whatprovides) and make the reboot condition null-safe.

Signed-off-by: HVSharma12 <[email protected]>
@github-actions

github-actions Bot commented Oct 8, 2026

Copy link
Copy Markdown

CI tests do not run automatically on pull requests. A role repository
maintainer can start them by posting a /citest slash command in a
pull request comment.

See GitHub CI testing using /citest
for details.

Run every available CI workflow:

/citest all

Run the linting and other lightweight checks:

/citest linters

Run the integration tests (QEMU/container and Testing Farm):

/citest integration

Run one or more selected workflows by separating their names with spaces:

/citest ansible-lint
/citest ansible-lint markdownlint
Command Check name Description
/citest all All checks listed below Run every CI test available for this role
/citest linters Lint and lightweight checks Run ansible-lint, ansible-test, ansible-managed-var-comment, codespell, markdownlint, pr-title-lint, test_converting_readme, and codeql, python-unit-test, and shellcheck when those workflows exist
/citest integration QEMU/container and Testing Farm checks Run qemu-kvm-integration-tests and tft
/citest ansible-lint Ansible Lint / ansible_lint (<ansible-lint>, <ansible>, <python>) (pull_request) Lint Ansible content after converting the role to collection format
/citest ansible-managed-var-comment Check for ansible_managed variable use in comments / ansible_managed_var_comment (pull_request) Fail if ansible_managed is used in comments
/citest ansible-test Ansible Test / ansible_test (<ansible>, <python>) (pull_request) Run ansible-test sanity tests
/citest codespell Codespell / Check for spelling errors (pull_request) Check for spelling errors
/citest markdownlint Markdown Lint / markdownlint (pull_request) Lint Markdown files
/citest pr-title-lint PR Title Lint / commit-checks Check that the pull request title follows the required format
/citest qemu-kvm-integration-tests Test / scenario (<image>, <env>) (pull_request) Run role integration tests in QEMU VMs and containers
/citest test_converting_readme Test converting README.md to README.html / test_converting_readme (pull_request) Convert README.md to HTML
/citest tft <platform>|ansible-<version> Run integration tests in Testing Farm
/citest woke Woke / Detect non-inclusive language (pull_request) Detect non-inclusive language
/citest codeql CodeQL / Analyze (python) (pull_request) CodeQL security and quality analysis for Python
/citest python-unit-test Python Unit Tests / python (<python>, <os>) (pull_request) Run Python unit tests
/citest shellcheck ShellCheck / shellcheck (pull_request) Lint shell scripts

Post another /citest comment at any time to run another selection.

@coderabbitai

coderabbitai Bot commented Oct 8, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration
  • Configuration used: Repository: linux-system-roles/kernel_settings/.coderabbit.yaml
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: fd14f13b-f376-4650-9b39-6edcb82c7447

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@richm

richm commented Oct 8, 2026

Copy link
Copy Markdown
Collaborator

/citest all

@richm
richm merged commit 7899503 into linux-system-roles:main Oct 8, 2026
43 of 44 checks passed
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.

2 participants