-
Notifications
You must be signed in to change notification settings - Fork 260
feat: Chained cni conflist with cilium #4082
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
There was a problem hiding this 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 adds support for generating chained CNI conflist files with Cilium, enabling AzureCNI to handle interfaces, routing, ADD and DELETE operations while Cilium manages CNP, CEP, and eBPF programs on top.
Key changes:
- Introduces new
azurecni-chained-ciliumscenario for CNS conflist generation - Adds AzureCNIChainedCiliumGenerator implementation with corresponding tests
- Provides integration test manifests and documentation for Swift v2 + Cilium setup
Reviewed Changes
Copilot reviewed 11 out of 11 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| cns/service/main.go | Adds new scenario constant and case handling for azurecni-chained-cilium |
| cns/cniconflist/generator.go | Defines AzureCNIChainedCiliumGenerator struct and Close method |
| cns/cniconflist/generator_linux.go | Implements Generate method for creating chained CNI conflist |
| cns/cniconflist/generator_windows.go | Adds Windows stub implementation returning not implemented error |
| cns/cniconflist/generator_linux_test.go | Adds unit test for the new generator |
| cns/cniconflist/testdata/fixtures/azure-chained-cilium.conflist | Test fixture for expected conflist output |
| test/integration/manifests/cnsconfig/azclichainedciliumconfigmap.yaml | CNS configuration for chained Cilium setup |
| test/integration/manifests/cilium/v1.17/cilium-config/cilium-chained-config.yaml | Cilium configuration for chained mode |
| test/integration/manifests/cilium/netpol/default-allow.yaml | Sample Cilium network policy for testing |
| test/integration/manifests/swiftv2/mt-deploy.yaml | Test deployment manifest |
| docs/feature/swift-v2/setup-guide.md | Setup guide for Swift v2 with Cilium |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
7b36558 to
b35bbaf
Compare
1ff50ed to
93d32ac
Compare
|
This pull request is stale because it has been open for 2 weeks with no activity. Remove stale label or comment or this will be closed in 7 days |
993c4a3 to
61c427e
Compare
5a7cb0d to
10f53db
Compare
10f53db to
33940de
Compare
Reason for Change:
Adds chaining implementation for AzureCNI + Cilium. Intent is for AzureCNI to handle interfaces, routing, ADD and Delete, while Cilium adds CNP, CEP, and eBPF programs on top of interfaces.
Adds:
Issue Fixed:
Requirements:
Notes: