Skip to content

Conversation

@paulgmiller
Copy link

@paulgmiller paulgmiller commented Apr 29, 2025

What type of PR is this?
/kind cleanup

What this PR does / why we need it:
Get new reference plugins from dalec packages instead of zip. Only ever install one version defined in components.json No longer takes input from RP so we only cache one version

Some important notes

  1. flatcar and osguard still on old ones. Need to find owners there to build them in dalec

  2. Not installing at CSE time any more just in vhd.

  3. only ever one version cached.

Which issue(s) this PR fixes:

CVE in tap binary are fixed but also this stops us from going to wierd shars directly

Requirements:

Special notes for your reviewer:

Release note:

none

@aks-node-assistant aks-node-assistant bot added the components This pull request updates cached components on Linux or Windows VHDs label Apr 29, 2025
aks-node-assistant bot and others added 13 commits December 1, 2025 10:58
Co-authored-by: aks-node-assistant[bot] <190555641+aks-node-assistant[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: aks-node-assistant[bot] <190555641+aks-node-assistant[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
…source in scenario Flatcar_SecureTLSBootstrapping_BootstrapToken_Fallback (#7495)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: aks-node-assistant[bot] <190555641+aks-node-assistant[bot]@users.noreply.github.com>
Paul Miller added 2 commits January 29, 2026 17:30
@github-actions
Copy link
Contributor

The latest Buf updates on your PR. Results from workflow Buf CI / buf (pull_request).

BuildFormatLintBreakingUpdated (UTC)
✅ passed✅ passed✅ passed✅ passedJan 30, 2026, 11:14 PM

@paulgmiller paulgmiller changed the base branch from master to main January 30, 2026 23:21
Copilot AI review requested due to automatic review settings January 30, 2026 23:23
Copy link
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 refactors the installation of container networking plugins by migrating from direct downloads to dalec packages, with versions now centrally defined in components.json. This change addresses CVE vulnerabilities in the tap binary and eliminates dependencies on external shares.

Changes:

  • Replaced cni-plugins with containernetworking-plugins package from dalec
  • Removed generic download logic from cse_install.sh and added OS-specific installCNI() functions
  • Updated components.json with version specifications for Ubuntu (20.04, 22.04, 24.04) and Azure Linux 3.0
  • Flatcar and OSGuard continue using hardcoded downloads (v1.6.2) pending dalec updates

Reviewed changes

Copilot reviewed 37 out of 71 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
parts/common/components.json Renamed package from cni-plugins to containernetworking-plugins with OS-specific version entries
parts/linux/cloud-init/artifacts/cse_install.sh Removed generic installCNI() function and commented out installation call
parts/linux/cloud-init/artifacts/ubuntu/cse_install_ubuntu.sh Added Ubuntu-specific installCNI() using apt-get
parts/linux/cloud-init/artifacts/mariner/cse_install_mariner.sh Added Mariner-specific installCNI() using dnf
parts/linux/cloud-init/artifacts/flatcar/cse_install_flatcar.sh Added Flatcar-specific installCNI() with hardcoded v1.6.2 download
parts/linux/cloud-init/artifacts/azlosguard/cse_install_osguard.sh Added OSGuard-specific installCNI() with hardcoded v1.6.2 download
pkg/agent/testdata/* Updated test data binary blobs reflecting the configuration changes

}

installCNI() {
#This is an old versionb because dalec needs to be updated for osguard/flatcar
Copy link

Copilot AI Jan 30, 2026

Choose a reason for hiding this comment

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

The comment contains a typo: "versionb" should be "version".

Suggested change
#This is an old versionb because dalec needs to be updated for osguard/flatcar
#This is an old version because dalec needs to be updated for osguard/flatcar

Copilot uses AI. Check for mistakes.
installCNI() {
echo "installing ubuntu containernetworking-plugins"
# Old versions of VHDs will not have components.json. If it does not exist, we will fall back to the hardcoded download for CNI.
# Network Isolated Cluster / Bring Your Own ACR will not work with a vhd that requres a hardcoded CNI download.
Copy link

Copilot AI Jan 30, 2026

Choose a reason for hiding this comment

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

The comment contains a typo: "requres" should be "requires".

Suggested change
# Network Isolated Cluster / Bring Your Own ACR will not work with a vhd that requres a hardcoded CNI download.
# Network Isolated Cluster / Bring Your Own ACR will not work with a vhd that requires a hardcoded CNI download.

Copilot uses AI. Check for mistakes.
fi
installCNI #reference plugins. Mostly for kubenet but loopback plugin is used by containerd until containerd 2
rm -rf $CNI_DOWNLOADS_DIR &
#unncessary as this is completely installed at vhd build time in install dependeencies
Copy link

Copilot AI Jan 30, 2026

Choose a reason for hiding this comment

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

The comment contains a typo: "unncessary" should be "unnecessary".

Suggested change
#unncessary as this is completely installed at vhd build time in install dependeencies
#unnecessary as this is completely installed at vhd build time in install dependeencies

Copilot uses AI. Check for mistakes.
}

# Reference CNI plugins is used by kubenet and the loopback plugin used by containerd 1.0 (dependency gone in 2.0)
# The version used to be deteremined by RP/toggle but are now just hadcoded in vhd as they rarely change and require a node image upgrade anyways
Copy link

Copilot AI Jan 30, 2026

Choose a reason for hiding this comment

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

The comment contains a typo: "deteremined" should be "determined".

Suggested change
# The version used to be deteremined by RP/toggle but are now just hadcoded in vhd as they rarely change and require a node image upgrade anyways
# The version used to be determined by RP/toggle but is now just hardcoded in the VHD as it rarely changes and requires a node image upgrade anyway

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

components This pull request updates cached components on Linux or Windows VHDs

Projects

None yet

Development

Successfully merging this pull request may close these issues.