Skip to content

feat: Validate KubeArmor BPF Programs Across Multiple Kernel Versions in CI #2782

Description

@AryanBakliwal

Feature Request

Short Description

Add a dedicated CI stage that validates KubeArmor's BPF programs across multiple Linux kernel versions using Cilium's little-vm-helper.

Is your feature request related to a problem? Please describe the use case.

Our current CI validates that KubeArmor's BPF programs compile on the CI runner, but it does not verify that they successfully load and work across different Linux kernel versions.

Kernel compatibility issues can arise due to verifier behavior, BTF differences, or kernel feature changes. As a result, BPF programs may compile successfully yet fail to load or behave differently on certain kernel versions. These issues are difficult to detect before release and may only surface when users run KubeArmor on a different kernel than the CI environment.

Describe the solution you'd like

Introduce a new CI stage that uses Cilium's little-vm-helper (lvh) to boot lightweight VMs with multiple upstream Linux kernel versions and validate KubeArmor's BPF programs.

The stage should:

  1. Build the required BPF artifacts.
  2. Boot lightweight VMs using little-vm-helper.
  3. Execute BPF load/validation tests against a representative set of supported kernel versions.
  4. Fail if any BPF program cannot be successfully loaded or verified on a target kernel.

Follow-up work to #2736

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions