Skip to content

feat(linux): network isolated cluster install package via cached first#8292

Merged
cameronmeissner merged 1 commit intomainfrom
xinhl/cache2
Apr 22, 2026
Merged

feat(linux): network isolated cluster install package via cached first#8292
cameronmeissner merged 1 commit intomainfrom
xinhl/cache2

Conversation

@fseldow
Copy link
Copy Markdown
Contributor

@fseldow fseldow commented Apr 13, 2026

What this PR does / why we need it:
feat(linux): network isolated cluster install package via cached first

Which issue(s) this PR fixes:

Fixes #

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Note

Copilot was unable to run its full agentic suite in this review.

Enable installing Linux bootstrap tools in network-isolated clusters by attempting a cache-only package install before falling back to pulling artifacts from a registry.

Changes:

  • Add cache-only install paths for Ubuntu (.deb via apt simulation + local install) and Mariner (.rpm via dnf plan + local install).
  • Refactor Mariner RPM cache selection into helper functions.
  • Update shared installer flow to try cache-first (with an e2e-only test-mode escape hatch) and extend the e2e scenario config.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
parts/linux/cloud-init/artifacts/ubuntu/cse_install_ubuntu.sh Adds installPackageFromCache for cache-only .deb installs.
parts/linux/cloud-init/artifacts/mariner/cse_install_mariner.sh Uses new helpers for RPM selection and adds cache-only install function.
parts/linux/cloud-init/artifacts/mariner/cse_helpers_mariner.sh Introduces helpers to pick cached RPM filenames and build install argument lists.
parts/linux/cloud-init/artifacts/cse_install.sh Tries installPackageFromCache before pulling from registry; adds test-mode bypass.
parts/linux/cloud-init/artifacts/cse_cmd.sh Adds env var wiring for NETWORK_ISOLATED_CLUSTER_TEST_MODE.
e2e/scenario_test.go Enables “TestMode” for the network-isolated cluster e2e scenario.

Comment thread parts/linux/cloud-init/artifacts/ubuntu/cse_install_ubuntu.sh
Comment thread parts/linux/cloud-init/artifacts/ubuntu/cse_install_ubuntu.sh
Comment thread parts/linux/cloud-init/artifacts/ubuntu/cse_install_ubuntu.sh
Comment thread parts/linux/cloud-init/artifacts/mariner/cse_helpers_mariner.sh Outdated
Comment thread parts/linux/cloud-init/artifacts/cse_install.sh
Comment thread parts/linux/cloud-init/artifacts/cse_install.sh
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 6 out of 6 changed files in this pull request and generated 6 comments.

Comment thread parts/linux/cloud-init/artifacts/cse_install.sh
Comment thread parts/linux/cloud-init/artifacts/ubuntu/cse_install_ubuntu.sh Outdated
Comment thread parts/linux/cloud-init/artifacts/mariner/cse_install_mariner.sh Outdated
Comment thread parts/linux/cloud-init/artifacts/mariner/cse_install_mariner.sh Outdated
Comment thread parts/linux/cloud-init/artifacts/cse_install.sh
Comment thread parts/linux/cloud-init/artifacts/cse_cmd.sh Outdated
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 6 out of 6 changed files in this pull request and generated 2 comments.

Comment thread parts/linux/cloud-init/artifacts/ubuntu/cse_install_ubuntu.sh Outdated
Comment thread parts/linux/cloud-init/artifacts/ubuntu/cse_install_ubuntu.sh Outdated
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 6 out of 6 changed files in this pull request and generated 2 comments.

Comment thread parts/linux/cloud-init/artifacts/mariner/cse_install_mariner.sh Outdated
Comment thread parts/linux/cloud-init/artifacts/mariner/cse_install_mariner.sh Outdated
Comment thread parts/linux/cloud-init/artifacts/cse_cmd.sh Outdated
local download_root="/tmp/kubernetes/downloads" # /opt folder will return permission error

if [ "${NETWORK_ISOLATED_CLUSTER_TEST_MODE}" = "true" ]; then
echo "NETWORK_ISOLATED_CLUSTER_TEST_MODE=true, skipping installPackageFromCache for ${tool_name}"
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.

i dont understand, what does test mode mean here, its not clear just by looking at the parameter.

Are you forcing the skip of package cache install? Is this different fromSHOULD_ENFORCE_KUBE_PMC_INSTALL

Copy link
Copy Markdown
Contributor Author

@fseldow fseldow Apr 21, 2026

Choose a reason for hiding this comment

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

  1. I plan to decrease the useage of SHOULD_ENFORCE_KUBE_PMC_INSTALL in Network isolated cluster scenario. Because SHOULD_ENFORCE_KUBE_PMC_INSTALL reads from vmss tag, which could be changed by customer (if they add this tag)
  2. SHOULD_ENFORCE_KUBE_PMC_INSTALL used to force package install instead of binary in version < 1.34. Here the e2emode is to avoid some e2e scenarios directly use cache but fail to cover the network isolated cluster pull package logic

Comment thread parts/linux/cloud-init/artifacts/ubuntu/cse_install_ubuntu.sh
Comment thread parts/linux/cloud-init/artifacts/mariner/cse_install_mariner.sh Outdated
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 6 out of 6 changed files in this pull request and generated 3 comments.

Comment thread parts/linux/cloud-init/artifacts/mariner/cse_install_mariner.sh
Comment thread parts/linux/cloud-init/artifacts/ubuntu/cse_install_ubuntu.sh
Comment thread spec/parts/linux/cloud-init/artifacts/cse_install_mariner_spec.sh Outdated
@cameronmeissner cameronmeissner merged commit fdc598a into main Apr 22, 2026
31 of 32 checks passed
@cameronmeissner cameronmeissner deleted the xinhl/cache2 branch April 22, 2026 15:59
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.

4 participants