Skip to content

Commit 5ecd33f

Browse files
authored
feat: add kubernetes object health monitor (#338)
Signed-off-by: Ajay Mishra <[email protected]>
1 parent a84099d commit 5ecd33f

File tree

16 files changed

+2638
-11
lines changed

16 files changed

+2638
-11
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -446,6 +446,7 @@ fault-quarantine/fault-quarantine
446446
fault-remediation/fault-remediation
447447
health-events-analyzer/health-events-analyzer
448448
health-monitors/syslog-health-monitor/syslog-health-monitor
449+
health-monitors/kubernetes-object-monitor/kubernetes-object-monitor
449450
labeler/labeler
450451
metadata-collector/metadata-collector
451452
node-drainer/node-drainer

health-monitors/kubernetes-object-monitor/Makefile

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,12 @@ include ../../make/common.mk
99
include ../../make/go.mk
1010
include ../../make/docker.mk
1111

12+
# Test setup commands for kubebuilder envtest
13+
# Version is centrally managed in .versions.yaml
14+
TEST_SETUP_COMMANDS := \
15+
go install sigs.k8s.io/controller-runtime/tools/setup-envtest@$(SETUP_ENVTEST_VERSION) && \
16+
eval $$(setup-envtest use --use-env -p env) &&
17+
1218
.PHONY: all
1319
all: lint-test
1420

health-monitors/kubernetes-object-monitor/go.mod

Lines changed: 85 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,90 @@ module github.com/nvidia/nvsentinel/health-monitors/kubernetes-object-monitor
22

33
go 1.25.4
44

5-
require github.com/nvidia/nvsentinel/commons v0.0.0
5+
require (
6+
github.com/google/cel-go v0.26.1
7+
github.com/nvidia/nvsentinel/commons v0.0.0
8+
github.com/nvidia/nvsentinel/data-models v0.0.0
9+
github.com/prometheus/client_golang v1.23.2
10+
github.com/prometheus/client_model v0.6.2
11+
github.com/stretchr/testify v1.11.1
12+
google.golang.org/grpc v1.76.0
13+
google.golang.org/protobuf v1.36.10
14+
k8s.io/api v0.34.1
15+
k8s.io/apiextensions-apiserver v0.34.1
16+
k8s.io/apimachinery v0.34.1
17+
k8s.io/client-go v0.34.1
18+
sigs.k8s.io/controller-runtime v0.22.4
19+
)
20+
21+
require (
22+
cel.dev/expr v0.25.1 // indirect
23+
github.com/BurntSushi/toml v1.5.0 // indirect
24+
github.com/Masterminds/semver/v3 v3.4.0 // indirect
25+
github.com/antlr4-go/antlr/v4 v4.13.1 // indirect
26+
github.com/beorn7/perks v1.0.1 // indirect
27+
github.com/cespare/xxhash/v2 v2.3.0 // indirect
28+
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
29+
github.com/emicklei/go-restful/v3 v3.13.0 // indirect
30+
github.com/evanphx/json-patch/v5 v5.9.11 // indirect
31+
github.com/fsnotify/fsnotify v1.9.0 // indirect
32+
github.com/fxamacker/cbor/v2 v2.9.0 // indirect
33+
github.com/go-logr/logr v1.4.3 // indirect
34+
github.com/go-openapi/jsonpointer v0.22.1 // indirect
35+
github.com/go-openapi/jsonreference v0.21.3 // indirect
36+
github.com/go-openapi/swag v0.25.1 // indirect
37+
github.com/go-openapi/swag/cmdutils v0.25.1 // indirect
38+
github.com/go-openapi/swag/conv v0.25.1 // indirect
39+
github.com/go-openapi/swag/fileutils v0.25.1 // indirect
40+
github.com/go-openapi/swag/jsonname v0.25.1 // indirect
41+
github.com/go-openapi/swag/jsonutils v0.25.1 // indirect
42+
github.com/go-openapi/swag/loading v0.25.1 // indirect
43+
github.com/go-openapi/swag/mangling v0.25.1 // indirect
44+
github.com/go-openapi/swag/netutils v0.25.1 // indirect
45+
github.com/go-openapi/swag/stringutils v0.25.1 // indirect
46+
github.com/go-openapi/swag/typeutils v0.25.1 // indirect
47+
github.com/go-openapi/swag/yamlutils v0.25.1 // indirect
48+
github.com/gogo/protobuf v1.3.2 // indirect
49+
github.com/google/btree v1.1.3 // indirect
50+
github.com/google/gnostic-models v0.7.0 // indirect
51+
github.com/google/go-cmp v0.7.0 // indirect
52+
github.com/google/uuid v1.6.0 // indirect
53+
github.com/json-iterator/go v1.1.12 // indirect
54+
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
55+
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee // indirect
56+
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
57+
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
58+
github.com/prometheus/common v0.67.2 // indirect
59+
github.com/prometheus/procfs v0.19.2 // indirect
60+
github.com/spf13/pflag v1.0.10 // indirect
61+
github.com/stoewer/go-strcase v1.3.1 // indirect
62+
github.com/x448/float16 v0.8.4 // indirect
63+
go.uber.org/automaxprocs v1.6.0 // indirect
64+
go.yaml.in/yaml/v2 v2.4.3 // indirect
65+
go.yaml.in/yaml/v3 v3.0.4 // indirect
66+
golang.org/x/exp v0.0.0-20251023183803-a4bb9ffd2546 // indirect
67+
golang.org/x/net v0.47.0 // indirect
68+
golang.org/x/oauth2 v0.33.0 // indirect
69+
golang.org/x/sync v0.18.0 // indirect
70+
golang.org/x/sys v0.38.0 // indirect
71+
golang.org/x/term v0.37.0 // indirect
72+
golang.org/x/text v0.31.0 // indirect
73+
golang.org/x/time v0.14.0 // indirect
74+
gomodules.xyz/jsonpatch/v2 v2.5.0 // indirect
75+
google.golang.org/genproto/googleapis/api v0.0.0-20251111163417-95abcf5c77ba // indirect
76+
google.golang.org/genproto/googleapis/rpc v0.0.0-20251111163417-95abcf5c77ba // indirect
77+
gopkg.in/evanphx/json-patch.v4 v4.13.0 // indirect
78+
gopkg.in/inf.v0 v0.9.1 // indirect
79+
gopkg.in/yaml.v3 v3.0.1 // indirect
80+
k8s.io/klog/v2 v2.130.1 // indirect
81+
k8s.io/kube-openapi v0.0.0-20250910181357-589584f1c912 // indirect
82+
k8s.io/utils v0.0.0-20251002143259-bc988d571ff4 // indirect
83+
sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730 // indirect
84+
sigs.k8s.io/randfill v1.0.0 // indirect
85+
sigs.k8s.io/structured-merge-diff/v6 v6.3.0 // indirect
86+
sigs.k8s.io/yaml v1.6.0 // indirect
87+
)
688

789
replace github.com/nvidia/nvsentinel/commons => ../../commons
90+
91+
replace github.com/nvidia/nvsentinel/data-models => ../../data-models

0 commit comments

Comments
 (0)