Skip to content

feat: pipeline tests for Cilium eBPF host routing + dualstack#4154

Merged
santhoshmprabhu merged 23 commits intomasterfrom
sanprabhu/ebpf-host-routing-dualstack
Apr 23, 2026
Merged

feat: pipeline tests for Cilium eBPF host routing + dualstack#4154
santhoshmprabhu merged 23 commits intomasterfrom
sanprabhu/ebpf-host-routing-dualstack

Conversation

@santhoshmprabhu
Copy link
Copy Markdown
Contributor

Reason for Change:
This PR adds tests for dualstack clusters with eBPF host routing enabled. Key changes:

  1. Add Cilium configuration to enable eBPF host routing, while setting native routing CIDRs to the correct ipv4 and ipv6 CIDRs
  2. Create the cluster with matching ipv4 and ipv6 CIDRs for pods
  3. Perform the same tests as Cilium dualstack clusters today.

Issue Fixed:

Requirements:

Notes:

Copilot AI review requested due to automatic review settings December 2, 2025 19:53
@santhoshmprabhu santhoshmprabhu requested a review from a team as a code owner December 2, 2025 19:53
@santhoshmprabhu santhoshmprabhu self-assigned this Dec 2, 2025
@santhoshmprabhu santhoshmprabhu added ci Infra or tooling. cilium Related to Cilium. labels Dec 2, 2025
@santhoshmprabhu santhoshmprabhu marked this pull request as draft December 2, 2025 19:53
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 adds comprehensive end-to-end pipeline tests for Cilium eBPF with host routing enabled on dualstack AKS clusters. The implementation mirrors the existing Cilium dualstack overlay tests while introducing eBPF-specific configurations and deployment workflows.

Key Changes:

  • New Cilium eBPF dualstack configuration with native routing mode and proper CIDR settings for both IPv4 and IPv6
  • Pipeline integration with new cluster creation, deployment, and E2E test stages for the cilium_ebpf_ds_e2e test suite
  • Container specification fixes to explicitly target the cilium-agent container in multi-container Cilium pods

Reviewed changes

Copilot reviewed 12 out of 12 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
test/integration/manifests/cilium/v1.17/ebpf/dualstack/static/cilium-config.yaml New Cilium ConfigMap for eBPF dualstack with native routing mode and routing CIDRs
test/integration/manifests/cilium/v1.17/ebpf/dualstack/static/azure-ip-masq-agent-config-reconciled.yaml IP masquerade agent configuration for non-masquerade CIDRs
test/integration/manifests/cilium/v1.17/ebpf/dualstack/cilium.yaml Complete Cilium DaemonSet definition with eBPF configurations, init containers, and volume mounts
hack/aks/deploy.mk Added deploy-ebpf-dualstack-cilium target with required variable exports and envsubst template processing
hack/aks/Makefile Made POD_CIDR overridable and added POD_CIDRS support for dualstack cluster creation
.pipelines/pipeline.yaml Integrated new cilium_ebpf_ds_e2e test suite into the pipeline with proper dependencies and cleanup
.pipelines/singletenancy/cilium-dualstack-ebpf/cilium-dualstack-e2e-job-template.yaml Job template defining cluster creation and E2E test stages with required environment variables
.pipelines/singletenancy/cilium-dualstack-ebpf/cilium-dualstack-e2e-step-template.yaml Step template with complete test workflow including Cilium installation, connectivity tests, and validation
.pipelines/templates/create-cluster.yaml Added POD_CIDRS export for dualstack cluster configuration
.pipelines/templates/log.steps.yaml Added container name specification for Cilium kubectl exec commands
.pipelines/templates/log-template.yaml Added container name specification for Cilium kubectl exec commands
test/validate/linux_validate.go Added containerName field to cilium state file validation check

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .pipelines/templates/create-cluster.yaml Outdated
Comment thread hack/aks/deploy.mk Outdated
Comment thread hack/aks/deploy.mk Outdated
Comment thread test/integration/manifests/cilium/v1.17/ebpf/dualstack/static/cilium-config.yaml Outdated
Comment thread hack/aks/Makefile
@santhoshmprabhu santhoshmprabhu marked this pull request as ready for review December 19, 2025 18:19
Comment thread test/validate/linux_validate.go
Copy link
Copy Markdown
Contributor

@QxBytes QxBytes left a comment

Choose a reason for hiding this comment

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

are we planning on running with 1.18 as well? In the future the default version will likely be bumped up and there won't be files for 1.18

Comment thread test/integration/manifests/cilium/v1.17/ebpf/dualstack/cilium.yaml
Comment thread hack/aks/deploy.mk
Comment thread test/integration/manifests/cilium/v1.17/ebpf/dualstack/static/cilium-config.yaml Outdated
Comment thread .pipelines/templates/create-cluster.yaml
Comment thread hack/aks/Makefile Outdated
Comment thread hack/aks/deploy.mk Outdated
camrynl
camrynl previously approved these changes Apr 22, 2026
Copy link
Copy Markdown
Contributor

@QxBytes QxBytes left a comment

Choose a reason for hiding this comment

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

At some point can we make a test branch and update the deploy.mk to use 1.18 variables so we know the pipeline passes when it uses 1.18?

Comment thread test/integration/manifests/cilium/v1.18/ebpf/dualstack/cilium.yaml
@santhoshmprabhu
Copy link
Copy Markdown
Contributor Author

@santhoshmprabhu santhoshmprabhu added this pull request to the merge queue Apr 22, 2026
Merged via the queue into master with commit 9d6580e Apr 23, 2026
35 checks passed
@santhoshmprabhu santhoshmprabhu deleted the sanprabhu/ebpf-host-routing-dualstack branch April 23, 2026 01:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci Infra or tooling. cilium Related to Cilium.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants