Skip to content

ci: conflist generation and steps for cilium swiftv2#4376

Open
QxBytes wants to merge 25 commits intomasterfrom
alew/conflist-generation
Open

ci: conflist generation and steps for cilium swiftv2#4376
QxBytes wants to merge 25 commits intomasterfrom
alew/conflist-generation

Conversation

@QxBytes
Copy link
Copy Markdown
Contributor

@QxBytes QxBytes commented Apr 29, 2026

Reason for Change:

Adds John's conflist generation changes to CNS (currently unused).
Adds swiftv2 cilium instructions and related files for watcher.
Adds sample chained cni conflist which should now be bundled into dropgz.

test/integration/manifests/cilium/watcher/deployment-alt-healthz-port.yaml and test/integration/manifests/cni/conflist-installer-byon.yaml are identical except one specifies a healthz port.

Conflist installer uses acnpublic image but for correctness this particular image has the chained conflist we want.
acnpublic.azurecr.io/public/containernetworking/azure-cni:v1.7.5-3

Watcher relies on an image that has kubectl and yq.

Issue Fixed:

Requirements:

Notes:

@QxBytes QxBytes self-assigned this Apr 29, 2026
@QxBytes QxBytes added swift-v2 cilium Related to Cilium. labels Apr 29, 2026
@QxBytes
Copy link
Copy Markdown
Contributor Author

QxBytes commented Apr 29, 2026

/azp run Azure Container Networking PR

@azure-pipelines
Copy link
Copy Markdown

Azure Pipelines successfully started running 1 pipeline(s).

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

Adds support files and plumbing for an Azure CNI chained-with-Cilium conflist scenario (and related Swiftv2 unmanaged-node setup), including CNS conflist generation + fixtures/tests, and bundling the sample conflist into the CNI payload.

Changes:

  • Add a new CNS conflist generation scenario (azurecni-chained-cilium) with Linux generator + fixtures + unit test.
  • Add Swiftv2 Cilium “watcher” deployment manifests (including an alternate healthz-port variant) and BYON conflist installer manifest.
  • Bundle azure-chained-cilium.conflist into the CNI dropgz payload and pipeline build outputs, plus add a setup guide.

Reviewed changes

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

Show a summary per file
File Description
test/integration/manifests/cnsconfig/azcnichainedciliumconfigmap.yaml Adds CNS config for chained Cilium conflist generation scenario.
test/integration/manifests/cni/conflist-installer-byon.yaml Adds DaemonSet manifest to install chained conflist onto BYON nodes.
test/integration/manifests/cilium/watcher/deployment.yaml Adds watcher deployment to clone/modify managed Cilium DaemonSet for unmanaged nodes.
test/integration/manifests/cilium/watcher/deployment-alt-healthz-port.yaml Variant watcher manifest that sets alternate healthz bind port for kube-proxy coexistence.
docs/feature/swift-v2/setup-guide-cil.md Adds Swiftv2 managed Cilium setup instructions for BYON/unmanaged nodes.
cns/service/main.go Wires new conflist scenario string to a new generator.
cns/cniconflist/testdata/fixtures/azure-chained-cilium.conflist Adds fixture used to validate generated chained conflist output.
cns/cniconflist/generator_windows.go Adds Windows stub for the new generator (not implemented).
cns/cniconflist/generator_linux_test.go Switches to require and adds a test for the new generator.
cns/cniconflist/generator_linux.go Implements the chained AzureCNI→Cilium conflist generator.
cns/cniconflist/generator.go Adds generator type + Close() implementation.
cni/azure-chained-cilium.conflist Adds sample chained conflist intended for packaging/installation.
cni/Dockerfile.tmpl Includes chained conflist in payload build.
cni/Dockerfile Includes chained conflist in payload build.
.pipelines/build/scripts/cni.sh Copies chained conflist into pipeline output files.

Comment thread test/integration/manifests/cni/conflist-installer-byon.yaml
Comment thread test/integration/manifests/cilium/watcher/deployment.yaml Outdated
Comment thread test/integration/manifests/cilium/watcher/deployment-alt-healthz-port.yaml Outdated
Comment thread test/integration/manifests/cilium/watcher/deployment.yaml Outdated
Comment thread test/integration/manifests/cilium/watcher/deployment-alt-healthz-port.yaml Outdated
Comment thread docs/feature/swift-v2/setup-guide-cil.md
Comment thread docs/feature/swift-v2/setup-guide-cil.md 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 15 out of 15 changed files in this pull request and generated 6 comments.

Comment thread test/integration/manifests/cilium/watcher/deployment-alt-healthz-port.yaml Outdated
Comment thread test/integration/manifests/cilium/watcher/deployment-alt-healthz-port.yaml Outdated
Comment thread cns/cniconflist/generator_linux_test.go
Comment thread cns/service/main.go
Comment thread test/integration/manifests/cni/conflist-installer-byon.yaml
Comment thread test/integration/manifests/cilium/watcher/deployment.yaml Outdated
@QxBytes QxBytes marked this pull request as ready for review April 29, 2026 21:56
@QxBytes QxBytes requested review from a team as code owners April 29, 2026 21:56
Comment thread test/integration/manifests/cilium/watcher/deployment.yaml Outdated
```
export CONFLIST=azure-chained-cilium.conflist
export CONFLIST_PRIORITY=05
export CNI_IMAGE=acnpublic.azurecr.io/public/containernetworking/azure-cni:v1.7.5-3
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

can you include mcr image instead of acnpublic.. why are we asking them to replace?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Currently there isn't any mcr image available that has the chained cni conflist. This is the PR where it is introduced and added to dropgz/azure-cni.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cilium Related to Cilium. swift-v2

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants