Skip to content

NO-ISSUE: use reqpart in devenv kickstart for RHEL 10 BIOS+GPT compatibility#7048

Closed
copejon wants to merge 1 commit into
openshift:mainfrom
copejon:fix-el10-devenv-kickstart
Closed

NO-ISSUE: use reqpart in devenv kickstart for RHEL 10 BIOS+GPT compatibility#7048
copejon wants to merge 1 commit into
openshift:mainfrom
copejon:fix-el10-devenv-kickstart

Conversation

@copejon

@copejon copejon commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

RHEL 10 anaconda defaults to GPT disk labels even in BIOS mode, which
requires a biosboot partition that the hard-coded EFI partition layout
did not provide. Replace the explicit boot partition directives with
reqpart --add-boot, matching the pattern used by all other kickstart
templates in the repo. This lets anaconda auto-create the correct
platform partition for any firmware type.

Also add RHEL 10 support to get_base_isofile in manage-vm.sh.

Summary by CodeRabbit

  • New Features
    • Added support for provisioning RHEL 10 installation ISO images.
    • Updated installation disk setup so required boot partitions are created automatically based on firmware type (UEFI vs BIOS).
  • Bug Fixes
    • Improved virtual machine installation disk initialization and partition handling for more reliable provisioning.

@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Jul 14, 2026
@openshift-ci-robot

Copy link
Copy Markdown

@copejon: This pull request explicitly references no jira issue.

Details

In response to this:

RHEL 10 anaconda defaults to GPT disk labels even in BIOS mode, which
requires a biosboot partition that the hard-coded EFI partition layout
did not provide. Replace the explicit boot partition directives with
reqpart --add-boot, matching the pattern used by all other kickstart
templates in the repo. This lets anaconda auto-create the correct
platform partition for any firmware type.

Also add RHEL 10 support to get_base_isofile in manage-vm.sh.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@coderabbitai

coderabbitai Bot commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

Walkthrough

Development environment provisioning now uses Anaconda-managed boot partitions and recognizes RHEL 10 DVD ISO filenames.

Changes

Development environment provisioning

Layer / File(s) Summary
Automatic boot partition provisioning
scripts/devenv-builder/config/kickstart.ks.template
Kickstart disk setup retains disk clearing and uses reqpart --add-boot instead of explicit /boot/efi and /boot partitions.
RHEL 10 ISO selection
scripts/devenv-builder/manage-vm.sh
get_base_isofile now maps RHEL 10 to rhel-10.2 and 10.* versions to matching architecture-specific DVD ISO filenames.

Estimated code review effort: 2 (Simple) | ~10 minutes

Suggested reviewers: kasturinarra, jogeo

🚥 Pre-merge checks | ✅ 15
✅ Passed checks (15 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately reflects the main kickstart change for RHEL 10 compatibility, though it omits the ISO support update.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Stable And Deterministic Test Names ✅ Passed The PR only changes a kickstart template and a shell helper; no Ginkgo tests or test titles were added or modified.
Test Structure And Quality ✅ Passed PR only changes a kickstart template and a shell helper; no Ginkgo test code or test structure to review.
Microshift Test Compatibility ✅ Passed PR only changes a kickstart template and VM ISO selection; no new Ginkgo e2e tests or MicroShift-unsafe APIs were added.
Single Node Openshift (Sno) Test Compatibility ✅ Passed Changed files are only a kickstart template and a VM management shell script; no Ginkgo e2e tests or SNO-assumption code were added.
Topology-Aware Scheduling Compatibility ✅ Passed Only a kickstart template and VM helper changed; no manifests/controllers or scheduling constraints were added.
Ote Binary Stdout Contract ✅ Passed PR only changes a kickstart template and a VM management shell script; no OTE binary process-level code or stdout-to-stdout violations were introduced.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed The PR only changes a kickstart template and a VM helper script; no new Ginkgo e2e tests or network-dependent test code were added.
No-Weak-Crypto ✅ Passed Touched files only change partitioning and RHEL-10 ISO selection; no weak-crypto algorithms, custom crypto, or secret comparisons appear in the diff.
Container-Privileges ✅ Passed No container/K8s manifests were changed; the PR only edits a kickstart template and a shell script, with no privileged settings present.
No-Sensitive-Data-In-Logs ✅ Passed Touched lines only change partitioning and ISO selection; no new log/echo output or secret-bearing messages were added.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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.

@openshift-ci openshift-ci Bot requested review from jogeo and kasturinarra July 14, 2026 22:30
@openshift-ci

openshift-ci Bot commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: copejon

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jul 14, 2026

@coderabbitai coderabbitai Bot 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.

🧹 Nitpick comments (1)
scripts/devenv-builder/manage-vm.sh (1)

64-67: 🎯 Functional Correctness | 🔵 Trivial | 💤 Low value

Missing fallback for major version 10.

The script handles 8) and 9) to provide default minor versions, but there is no 10) case. If MICROSHIFT_RHEL_VERSION is set to exactly 10, the script will fail. Consider adding a 10) case with an appropriate default minor version.

♻️ Proposed fix
+        10)
+            echo "rhel-10.0-$(uname -m)-dvd.iso"
+            ;;
         10.*)
             echo "rhel-${rhel_version}-$(uname -m)-dvd.iso"
             ;;
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@scripts/devenv-builder/manage-vm.sh` around lines 64 - 67, Update the RHEL
version case logic in manage-vm.sh to add a 10) branch alongside the existing 8)
and 9) branches. For an exact MICROSHIFT_RHEL_VERSION of 10, assign the
appropriate default minor version before constructing the ISO filename, while
preserving the existing handling for other versions.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@scripts/devenv-builder/manage-vm.sh`:
- Around line 64-67: Update the RHEL version case logic in manage-vm.sh to add a
10) branch alongside the existing 8) and 9) branches. For an exact
MICROSHIFT_RHEL_VERSION of 10, assign the appropriate default minor version
before constructing the ISO filename, while preserving the existing handling for
other versions.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: ad4811a3-a19f-4846-817b-662780420468

📥 Commits

Reviewing files that changed from the base of the PR and between 25d93a1 and 0d4726d.

📒 Files selected for processing (2)
  • scripts/devenv-builder/config/kickstart.ks.template
  • scripts/devenv-builder/manage-vm.sh

@copejon copejon force-pushed the fix-el10-devenv-kickstart branch from 0d4726d to fbee40f Compare July 14, 2026 22:43

@coderabbitai coderabbitai Bot 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.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@scripts/devenv-builder/manage-vm.sh`:
- Around line 64-69: Update the version option usage text in the help output to
include RHEL 10 examples, changing the major-version example to 10 and the
minor-version example to 10.2 while preserving the existing supported-version
guidance.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: 76e565ad-49b9-4769-8fa2-5b15bb6d4ab3

📥 Commits

Reviewing files that changed from the base of the PR and between 0d4726d and fbee40f.

📒 Files selected for processing (2)
  • scripts/devenv-builder/config/kickstart.ks.template
  • scripts/devenv-builder/manage-vm.sh
🚧 Files skipped from review as they are similar to previous changes (1)
  • scripts/devenv-builder/config/kickstart.ks.template

Comment on lines +64 to +69
10)
echo "rhel-10.2-$(uname -m)-dvd.iso"
;;
10.*)
echo "rhel-${rhel_version}-$(uname -m)-dvd.iso"
;;

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.

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Document RHEL 10 in the -v help text.

These branches add RHEL 10 support, but help still says the major-version example is "9" and only shows "8.7" for a minor version. Update the corresponding usage text to mention 10/10.2, so users discover the new supported version.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@scripts/devenv-builder/manage-vm.sh` around lines 64 - 69, Update the version
option usage text in the help output to include RHEL 10 examples, changing the
major-version example to 10 and the minor-version example to 10.2 while
preserving the existing supported-version guidance.

@openshift-ci

openshift-ci Bot commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

@copejon: all tests passed!

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@copejon

copejon commented Jul 15, 2026

Copy link
Copy Markdown
Contributor Author

/close

@openshift-ci openshift-ci Bot closed this Jul 15, 2026
@openshift-ci

openshift-ci Bot commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

@copejon: Closed this PR.

Details

In response to this:

/close

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@copejon copejon deleted the fix-el10-devenv-kickstart branch July 15, 2026 21:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants