Skip to content

Xinhl/winall2#8545

Open
fseldow wants to merge 13 commits into
mainfrom
xinhl/winall2
Open

Xinhl/winall2#8545
fseldow wants to merge 13 commits into
mainfrom
xinhl/winall2

Conversation

@fseldow
Copy link
Copy Markdown
Contributor

@fseldow fseldow commented May 21, 2026

What this PR does / why we need it:

Which issue(s) this PR fixes:

Fixes #

fseldow and others added 13 commits May 7, 2026 16:58
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
- ORAS reference construction for azure-vnet-cni, overlay, and swift variants
- Correct destination path passed to ORAS download
- URL parse failure handling with correct error code
- ORAS pull failure with correct error code
- HTTP download fallback when registry server is not set
Follow containerdfunc.tests.ps1 pattern - mock DownloadFileWithOras
instead of Retry-Command, mock Move-Item/Remove-Item for file cleanup
ParameterFilter needs named params to match against
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
@github-actions
Copy link
Copy Markdown
Contributor

PR Title Lint Failed ❌

Current Title: Xinhl/winall2

Your PR title doesn't follow the expected format. Please update your PR title to follow one of these patterns:

Conventional Commits Format:

  • feat: add new feature - for new features
  • fix: resolve bug in component - for bug fixes
  • docs: update README - for documentation changes
  • refactor: improve code structure - for refactoring
  • test: add unit tests - for test additions
  • chore: remove dead code - for maintenance tasks
  • chore(deps): update dependencies - for updating dependencies
  • ci: update build pipeline - for CI/CD changes

Guidelines:

  • Use lowercase for the type and description
  • Keep the description concise but descriptive
  • Use imperative mood (e.g., "add" not "adds" or "added")
  • Don't end with a period

Examples:

  • feat(windows): add secure TLS bootstrapping for Windows nodes
  • fix: resolve kubelet certificate rotation issue
  • docs: update installation guide
  • Added new feature
  • Fix bug.
  • Update docs

Please update your PR title and the lint check will run again automatically.

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

This PR updates Windows CSE behavior for network-isolated clusters by adding ORAS-based download support for Azure CNI plugins and extending credential provider configuration for bootstrap-profile registry mirroring, along with new unit tests and an e2e scenario adjustment.

Changes:

  • Add ORAS download path for Windows Azure VNet CNI plugins when BootstrapProfileContainerRegistryServer is set.
  • Update Windows credential provider config generation to include an MCR mirror configuration for network-isolated scenarios.
  • Add Pester coverage for CNI URL parsing + ORAS reference construction, and tweak a Windows e2e scenario configuration.

Reviewed changes

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

Show a summary per file
File Description
staging/cse/windows/configfunc.ps1 Updates kubelet credential provider config generation for bootstrap profile registry scenarios.
staging/cse/windows/azurecnifunc.ps1 Adds ORAS-based download flow for Azure CNI plugins and URL parsing helper.
staging/cse/windows/azurecnifunc.tests.ps1 Adds Pester tests for URL parsing and ORAS behavior in Install-VnetPlugins.
parts/windows/windowscsehelper.ps1 Adds a new ORAS-related exit code constant and updates max code/name list.
e2e/scenario_win_test.go Adjusts a Windows network-isolated e2e scenario cluster selection and bootstrap config.

Comment on lines +412 to +417
defaultCacheDuration: "10m"
apiVersion: credentialprovider.kubelet.k8s.io/v1
args:
- $azureConfigFile
- name: mcr-credential-provider
matchImages:
Comment on lines +35 to +40
Logs-To-Event -TaskName "AKS.WindowsCSE.DownloadAzureVnetCniWithOras" -TaskMessage "Start to download Azure VNet CNI with oras. CniPackageVersionTag: $cniPackageVersionTag, BootstrapProfileContainerRegistryServer: $global:BootstrapProfileContainerRegistryServer"
$orasReference = "$global:BootstrapProfileContainerRegistryServer/aks/packages/azure/${orasPackageName}:${cniPackageVersionTag}"
$cachedFileName = Get-FileNameFromUrl -Url $VNetCNIPluginsURL
try {
Retry-Command -Command "DownloadFileWithOras" -Args @{Reference = $orasReference; DestinationPath = $zipfile; CachedFile = $cachedFileName } -Retries 5 -RetryDelaySeconds 10
}
Comment thread e2e/scenario_win_test.go
},
Config: Config{
Cluster: ClusterAzureBootstrapProfileCache,
Cluster: clusterAzureNetworkIsolated,
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