Skip to content

Commit 79a3504

Browse files
authored
Merge branch 'main' into gyan-resolve-issue365
2 parents 1a4297f + 21eb156 commit 79a3504

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+29764
-64
lines changed

.github/headers/NOTICE

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,7 @@ This product includes software developed by NVIDIA Corporation (https://www.nvid
66
The Initial Developer of the distros/kubernetes/nvsentinel/charts/mongodb-store/charts/mongodb, is Broadcom, Inc. (https://www.broadcom.com/).
77
Copyright 2024 Broadcom, Inc. All Rights Reserved.
88
Source: https://github.com/bitnami/charts/commit/f001424f6aad534d5fe5a9ad09265b24b1fd6fe7
9+
10+
The Initial Developer of the distros/kubernetes/nvsentinel/charts/mongodb-store/charts/psmdb-operator and distros/kubernetes/nvsentinel/charts/mongodb-store/charts/psmdb-db, is Percona LLC (https://www.percona.com/).
11+
Copyright 2019 Paul Czarkowski. All Rights Reserved.
12+
Source: https://github.com/percona/percona-helm-charts

.github/workflows/container-build-test.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,8 @@ jobs:
122122
path: ./cmd/csp-health-monitor
123123
- module: health-monitors/csp-health-monitor
124124
path: ./cmd/maintenance-notifier
125+
- module: event-exporter
126+
path: .
125127
steps:
126128
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
127129

.github/workflows/lint-test.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -135,6 +135,7 @@ jobs:
135135
matrix:
136136
component:
137137
- platform-connectors
138+
- event-exporter
138139
- store-client
139140
- commons
140141
- data-models

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -450,4 +450,5 @@ health-monitors/kubernetes-object-monitor/kubernetes-object-monitor
450450
labeler/labeler
451451
metadata-collector/metadata-collector
452452
node-drainer/node-drainer
453-
platform-connectors/platform-connectors
453+
platform-connectors/platform-connectors
454+
event-exporter/event-exporter

Makefile

Lines changed: 32 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ GO_MODULES := \
4949
fault-remediation \
5050
janitor \
5151
metadata-collector \
52+
event-exporter \
5253
store-client \
5354
commons
5455

@@ -441,6 +442,11 @@ lint-test-metadata-collector:
441442
@echo "Linting and testing metadata-collector..."
442443
$(MAKE) -C metadata-collector lint-test
443444

445+
.PHONY: lint-test-event-exporter
446+
lint-test-event-exporter:
447+
@echo "Linting and testing event-exporter..."
448+
$(MAKE) -C event-exporter lint-test
449+
444450
# Python module lint-test targets (non-health-monitors)
445451
# Currently no non-health-monitor Python modules
446452

@@ -702,7 +708,32 @@ tilt-ci: ## Run Tilt in CI mode (no UI, waits for all resources)
702708
@echo "Waiting for all statefulsets to be ready..."
703709
@kubectl get statefulsets --all-namespaces --no-headers -o custom-columns=":metadata.namespace,:metadata.name" | while read ns name; do \
704710
echo "Waiting for statefulset $$name in namespace $$ns..."; \
705-
kubectl rollout status statefulset/$$name -n $$ns --timeout=300s || exit 1; \
711+
if kubectl rollout status statefulset/$$name -n $$ns --timeout=300s 2>/dev/null; then \
712+
echo "StatefulSet $$name rolled out successfully"; \
713+
else \
714+
echo "Rollout status not available, checking ready replicas..."; \
715+
desired=$$(kubectl get statefulset $$name -n $$ns -o jsonpath='{.spec.replicas}' 2>/dev/null); \
716+
if [ -z "$$desired" ]; then \
717+
echo "Failed to get replica count for statefulset $$name"; \
718+
exit 1; \
719+
fi; \
720+
timeout=300; elapsed=0; \
721+
while [ $$elapsed -lt $$timeout ]; do \
722+
ready=$$(kubectl get statefulset $$name -n $$ns -o jsonpath='{.status.readyReplicas}' 2>/dev/null || echo "0"); \
723+
if [ "$$ready" = "$$desired" ]; then \
724+
echo "StatefulSet $$name is ready ($$ready/$$desired replicas)"; \
725+
break; \
726+
fi; \
727+
if [ $$elapsed -eq 0 ] || [ $$((elapsed % 30)) -eq 0 ]; then \
728+
echo "Waiting for $$name: $$ready/$$desired replicas ready..."; \
729+
fi; \
730+
sleep 5; elapsed=$$((elapsed + 5)); \
731+
done; \
732+
if [ $$elapsed -ge $$timeout ]; then \
733+
echo "Timeout waiting for statefulset $$name"; \
734+
exit 1; \
735+
fi; \
736+
fi; \
706737
done
707738
@echo "All workloads are ready!"
708739

distros/kubernetes/nvsentinel/Chart.lock

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,5 +29,14 @@ dependencies:
2929
- name: labeler
3030
repository: ""
3131
version: 0.1.0
32-
digest: sha256:c10f6e7fdb0b99a47f38e210c25e610da182c94fe32d89753a34352d12c0bb22
33-
generated: "2025-10-15T10:37:19.739789+05:30"
32+
- name: janitor
33+
repository: ""
34+
version: 0.1.0
35+
- name: metadata-collector
36+
repository: ""
37+
version: 0.1.0
38+
- name: kubernetes-object-monitor
39+
repository: ""
40+
version: 0.1.0
41+
digest: sha256:b72ab10b3e61b4073ae964a5e4062d251f238852b38b0445a2c3269114b26b30
42+
generated: "2025-11-19T14:51:23.601934963+05:30"
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# Copyright (c) 2025, NVIDIA CORPORATION. All rights reserved.
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
apiVersion: cert-manager.io/v1
16+
kind: Issuer
17+
metadata:
18+
name: {{ .Values.webhook.certIssuer }}
19+
namespace: {{ .Release.Namespace }}
20+
labels:
21+
{{- include "janitor.labels" . | nindent 4 }}
22+
spec:
23+
selfSigned: {}
24+

distros/kubernetes/nvsentinel/charts/janitor/values.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -224,8 +224,8 @@ webhook:
224224
# Directory containing webhook TLS certs
225225
certDir: "/tmp/k8s-webhook-server/serving-certs"
226226
# Cert-manager issuer to use for webhook certificate
227-
# This issuer must exist in the same namespace
228-
certIssuer: "selfsigned-ca-issuer"
227+
# Janitor creates its own self-signed issuer
228+
certIssuer: "janitor-selfsigned-issuer"
229229

230230
# Metrics Configuration
231231
metrics:

distros/kubernetes/nvsentinel/charts/mongodb-store/Chart.lock

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,11 @@ dependencies:
22
- name: mongodb
33
repository: ""
44
version: 16.2.2
5-
digest: sha256:7bc0222d2ca507e5b3c38829401a888800575ea76a693b42b4ab8edb2cd0ff37
6-
generated: "2025-09-19T18:55:22.424746878+05:30"
5+
- name: psmdb-operator
6+
repository: ""
7+
version: 1.21.1
8+
- name: psmdb-db
9+
repository: ""
10+
version: 1.21.1
11+
digest: sha256:52544f60c2e88079cc18da78164440e042103e5adc065668a648864e2ad938b9
12+
generated: "2025-11-19T15:26:21.985280107+05:30"

distros/kubernetes/nvsentinel/charts/mongodb-store/Chart.yaml

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,4 +22,13 @@ appVersion: "1.16.0"
2222
dependencies:
2323
- name: mongodb
2424
version: "16.2.2"
25-
condition: global.mongodbStore.enabled
25+
repository: ""
26+
condition: useBitnami
27+
- name: psmdb-operator
28+
version: "1.21.1"
29+
repository: ""
30+
condition: usePerconaOperator
31+
- name: psmdb-db
32+
version: "1.21.1"
33+
repository: ""
34+
condition: usePerconaOperator

0 commit comments

Comments
 (0)