bpfman / bpfman/bpfman-operator

When no pods are presents that the bpfappication can bind to it nevertheless reports Success

Open
#450 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
38
Forks
27
PR merge metrics
No merged PRs in 30d

Description

When no pods are present that the bpfapplication can bind to it nevertheless reports Success

```
[root@centos9-bpfman bpfman-operator]# kubectl get bpfapplicationstates
NAME NODE STATUS AGE
bpfapplication-sample-6eab3078 bpfman-deployment-control-plane Success 3m27s
```

```
[root@centos9-bpfman bpfman-operator]# kubectl get bpfapplicationstates -o yaml
apiVersion: v1
items:
- apiVersion: bpfman.io/v1alpha1
kind: BpfApplicationState
metadata:
creationTimestamp: "2025-07-02T08:58:02Z"
finalizers:
- bpfman.io.nsbpfapplicationcontroller/finalizer
generation: 1
labels:
bpfman.io/ownedByProgram: bpfapplication-sample
kubernetes.io/hostname: bpfman-deployment-control-plane
name: bpfapplication-sample-6eab3078
namespace: acme
ownerReferences:
- apiVersion: bpfman.io/v1alpha1
blockOwnerDeletion: true
controller: true
kind: BpfApplication
name: bpfapplication-sample
uid: 0a2dd439-577f-49ae-81ae-54a9a2265ddb
resourceVersion: "74052"
uid: 71499d5d-e248-404f-b432-112b395754dd
status:
appLoadStatus: LoadSuccess
conditions:
- lastTransitionTime: "2025-07-02T08:58:19Z"
message: The BPF application has been successfully loaded and attached
reason: Success
status: "True"
type: Success
node: bpfman-deployment-control-plane
programs:
- name: tc_pass_test
programId: 851
programLinkStatus: Success
tc: {}
type: TC
- name: tcx_next_test
programId: 852
programLinkStatus: Success
tcx: {}
type: TCX
- name: uprobe_test
programId: 853
programLinkStatus: Success
type: UProbe
uprobe: {}
- name: uretprobe_test
programId: 854
programLinkStatus: Success
type: URetProbe
uretprobe: {}
- name: xdp_pass_test
programId: 855
programLinkStatus: Success
type: XDP
xdp: {}
updateCount: 2
kind: List
metadata:
resourceVersion: ""
```

```
[root@centos9-bpfman bpfman-operator]# kubectl get pods
No resources found in acme namespace.
```

Whereas that is not an issue per se, it would be nice to have an indicator that actually no action was taken

Contributor guide

No contributing guide indexed for this repository

Research direction

Start at the controller reconciliation that creates BpfApplicationState and sets appLoadStatus and conditions; compare its behavior when the namespace has no matching pods. Define and test an explicit no-action outcome using the reported kubectl scenario, then verify that status and conditions do not claim a successful load when nothing was attached.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, kubernetes
Domain
devops, infrastructure
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.