Skip to content

MGMT-22968: Add infrastructure-only mode and Landing Zone VM support#1846

Open
eliorerz wants to merge 1 commit intoopenshift-metal3:masterfrom
eliorerz:MGMT-22968-infra-only-landing-zone
Open

MGMT-22968: Add infrastructure-only mode and Landing Zone VM support#1846
eliorerz wants to merge 1 commit intoopenshift-metal3:masterfrom
eliorerz:MGMT-22968-infra-only-landing-zone

Conversation

@eliorerz
Copy link

This commit adds a new infra_only Makefile target and support for Landing Zone VMs to dev-scripts. This enables users to create baremetal-like test infrastructure (VMs, networks, BMC emulation) without deploying an OpenShift cluster.

Changes:

  1. New infra_only Makefile target

    • Runs 'requirements' and 'configure' steps only
    • Stops before cluster deployment (build_installer, ironic, etc.)
    • Useful for testing external deployment tools (GoRI Lab, custom installers)
  2. Landing Zone VM support

    • Added NUM_LANDINGZONE environment variable (default: 0)
    • Added landingzone flavor with configurable specs:
      • LANDINGZONE_MEMORY (default: 8192 MB)
      • LANDINGZONE_DISK (default: 60 GB) * LANDINGZONE_VCPU (default: 4)
    • Landing Zone VM acts as deployment host with dual network access
  3. Network topology fix for Landing Zone use case

    • Worker VMs: cluster network only (BMC network removed)
    • Landing Zone VM: both BMC and cluster networks
    • Ensures proper network isolation for testing scenarios
    • Only applies when NUM_LANDINGZONE > 0
  4. Documentation updates

    • Added "Infrastructure-Only Mode" section to README
    • Added "Deploying with Landing Zone VMs" section to README
    • Documented network topology and use cases

Use case: Testing external deployment tools that need infrastructure without cluster deployment, such as GoRI Lab for bare metal OpenShift installations.

Backward compatibility: All existing targets (default, agent, assisted) work unchanged. New variables default to 0 (no Landing Zone VMs).

@openshift-ci openshift-ci bot requested review from celebdor and mkowalski January 28, 2026 23:06
@openshift-ci openshift-ci bot added the needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. label Jan 28, 2026
@openshift-ci
Copy link

openshift-ci bot commented Jan 28, 2026

Hi @eliorerz. Thanks for your PR.

I'm waiting for a openshift-metal3 member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

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.

@eliorerz
Copy link
Author

FYI @carbonin

@mkowalski
Copy link
Member

/ok-to-test

@openshift-ci openshift-ci bot added ok-to-test Indicates a non-member PR verified by an org member that is safe to test. and removed needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Jan 29, 2026
@mkowalski
Copy link
Member

/approve

AFAIK what you call "landing zone vm" is called "bastion host" and "landing zone" itself is "everything in my cloud subscription what can possibly interact with each other.

But it's just a naming so whatever works for you, works

@openshift-ci
Copy link

openshift-ci bot commented Jan 29, 2026

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: mkowalski

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 Jan 29, 2026
@eliorerz
Copy link
Author

/retest

1 similar comment
@eliorerz
Copy link
Author

eliorerz commented Feb 3, 2026

/retest

@dtantsur
Copy link
Member

dtantsur commented Feb 4, 2026

/retest

@elfosardo
Copy link
Member

/retest
failures do not seem related to the patch

@eliorerz eliorerz force-pushed the MGMT-22968-infra-only-landing-zone branch from eee61f9 to a59f828 Compare February 5, 2026 21:09
Add new 'infra_only' Makefile target and Landing Zone VM support to
dev-scripts, enabling creation of baremetal-like test infrastructure
without deploying an OpenShift cluster.

Changes:

1. New 'infra_only' Makefile target
   - Runs 'requirements' and 'configure' steps only
   - Stops before cluster deployment (build_installer, ironic, etc.)
   - Useful for testing external deployment tools

2. Landing Zone VM support
   - Added NUM_LANDINGZONE environment variable (default: 0)
   - Configurable specs: LANDINGZONE_MEMORY (8192 MB), LANDINGZONE_DISK
     (60 GB), LANDINGZONE_VCPU (4)
   - Landing Zone VM has dual network access (BMC and cluster networks)
   - Worker VMs use cluster network only when NUM_LANDINGZONE > 0

3. NetworkManager connection handling fix
   - Fixed nmcli error when cluster network is managed by libvirt
   - Suppress error if NetworkManager connection doesn't exist:
     sudo nmcli con del ${BAREMETAL_NETWORK_NAME} 2>/dev/null || true
   - Prevents make infra_only from failing in CI pipelines

4. Documentation
   - Added "Infrastructure-Only Mode" section to README
   - Added "Deploying with Landing Zone VMs" section to README

Use case: Testing external deployment tools (e.g., GoRI Lab) that need
infrastructure without cluster deployment.

Backward compatibility: All existing targets work unchanged. New variables
default to 0 (no Landing Zone VMs).
@eliorerz eliorerz force-pushed the MGMT-22968-infra-only-landing-zone branch from a59f828 to 1e2c202 Compare February 5, 2026 21:10
@eliorerz
Copy link
Author

eliorerz commented Feb 6, 2026

/retest

@openshift-ci
Copy link

openshift-ci bot commented Feb 6, 2026

@eliorerz: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/e2e-agent-compact-ipv4-iso-no-registry 1e2c202 link false /test e2e-agent-compact-ipv4-iso-no-registry
ci/prow/e2e-agent-ha-dualstack 1e2c202 link false /test e2e-agent-ha-dualstack

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.

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. ok-to-test Indicates a non-member PR verified by an org member that is safe to test.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants