Skip to content

Conversation

jpayne3506
Copy link
Contributor

Reason for Change:

Adds chained cni conflist to conflist generator.

Intent is for AzureCNI to handle interfaces, routing, ADD and Delete, while Cilium adds CNP, CEP, and eBPF programs on top of interfaces.

Issue Fixed:

Requirements:

Notes:

@jpayne3506 jpayne3506 requested review from a team as code owners October 15, 2025 23:05
Copy link
Contributor

@Copilot 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 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-cilium scenario 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.

whenUnsatisfiable: ScheduleAnyway
labelSelector:
matchLabels:
app: containe
Copy link

Copilot AI Oct 15, 2025

Choose a reason for hiding this comment

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

Label selector value 'containe' appears to be truncated - should be 'container' to match the app label.

Suggested change
app: containe
app: container

Copilot uses AI. Check for mistakes.

@jpayne3506 jpayne3506 force-pushed the jpayne3506/conflist-generation branch from 7b36558 to b35bbaf Compare October 15, 2025 23:09
@jpayne3506 jpayne3506 self-assigned this Oct 15, 2025
@jpayne3506 jpayne3506 force-pushed the jpayne3506/conflist-generation branch 2 times, most recently from 19536fb to 1ff50ed Compare October 15, 2025 23:29
@jpayne3506 jpayne3506 force-pushed the jpayne3506/conflist-generation branch from 1ff50ed to 93d32ac Compare October 17, 2025 16:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant