-
Notifications
You must be signed in to change notification settings - Fork 72
feat(nvca): extend control-plane validator with HA checks, DaemonSet n2n, and route CR type check #781
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
rohithb-hub
wants to merge
29
commits into
main
Choose a base branch
from
feat/nvca-control-plane-validator
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+3,714
−109
Open
feat(nvca): extend control-plane validator with HA checks, DaemonSet n2n, and route CR type check #781
Changes from all commits
Commits
Show all changes
29 commits
Select commit
Hold shift + click to select a range
c68325e
feat(nvca): add control-plane cluster validator role, gateway and sto…
rohithb-hub 1b05986
fix(nvca): address code-review findings in control-plane validator
rohithb-hub cc062af
fix(nvca): add security context, summary schema entries, and test ass…
rohithb-hub 793bb32
fix(nvca): sync AllCheckKeys count and clusterValidatorCheckKeys with…
rohithb-hub 21b85e8
fix(nvca): set RunAsUser on node-to-node probe security context
rohithb-hub eeb2c30
style(nvca): replace em dash with semicolon in security context comment
rohithb-hub 257ac5e
feat(nvca): extend control-plane validator with DaemonSet n2n, HA che…
rohithb-hub 29180fb
fix(nvca): remove activeDeadlineSeconds from DaemonSet pod template
rohithb-hub 603233d
fix(nvca): sweep orphan n2n DaemonSets left by SIGKILL'd validator runs
rohithb-hub 8c5bafe
fix(nvca): fix Bazel dep, DaemonSet taint handling, orphan sweep cleanup
rohithb-hub f810b22
fix(nvca): address CodeRabbit review comments
rohithb-hub 8e332e6
feat(nvca): warn on in-progress Tier-1 rollouts and strengthen tainte…
rohithb-hub 812fdbb
Merge branch 'main' into feat/nvca-control-plane-validator
rohithb-hub ee8379d
refactor(nvca): introduce Role type for VALIDATOR_ROLE constants
rohithb-hub a42d058
fix(nvca): update parseRole test for Role type and two-value return
rohithb-hub e2e6049
docs(nvca): correct node-to-node probe topology comment
rohithb-hub b9ac001
fix(nvca): correct control-plane checks that misreported cluster state
rohithb-hub 93e24c6
fix(nvca): surface Gateway API discovery failures instead of reportin…
rohithb-hub 8b516d7
fix(nvca): pin Gateway route versions and stop partial RBAC denials p…
rohithb-hub 208ce1c
fix(nvca): verify StatefulSet controller identity and treat skipped r…
rohithb-hub f861d3c
Merge branch 'main' into feat/nvca-control-plane-validator
vrv3814 9decc75
fix(nvca): make control-plane checks reachable and stop unobserved ch…
rohithb-hub 2381281
test(nvca): cover the gateway discovery surface, pod-list denials, an…
rohithb-hub 88d34da
chore(nvca): ignore locally built command binaries at the subtree root
rohithb-hub 93e96db
fix(nvca): scope the load-balancer test fixtures to the probed namespace
rohithb-hub 1aab2ac
test(nvca): resolve the Envoy namespace in fixtures so ambient env ca…
rohithb-hub 76bf31c
fix(nvca): reclaim suffixed legacy probe DaemonSets and wire the role…
rohithb-hub c2ec3ee
fix(nvca): grant the operator SA daemonset create and treat a single-…
rohithb-hub 8ae4120
fix(nvca): report an unexercised overlay check as not applicable inst…
rohithb-hub File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nothing in the repo sets
VALIDATOR_ROLE, so none of the eight control-plane checks this PR rewrote executes in any shipped path.deployments/nvca-operator/templates/cronjob.yaml:69sets onlyVALIDATOR_CONFIG_NAMESPACE/_NAME/_SUMMARY_NAMESPACE.values.yaml:538has no role key, andclusterValidator.enableddefaults to false.VALIDATOR_ROLEatsrc/clis/nvcf-cli/internal/selfhosted/clustervalidator.go:659— but only in the nvcf-cli Job builder. The CronJob path is wired by neither PR. Even with both merged, the operator CronJob still runs compute-plane.So
roleEnvis empty,parseRoledefaults to compute-plane, and validator.go:186if role == RoleControlPlaneis never true in production.Related dead wiring:
controlPlaneNamespaceSet(checks.go:1585) readsos.Getenv("NVCF_OPENBAO_NAMESPACE"), but that is an nvcf-cli client-side config key resolved viagetConfigValueWithDefault(internal/client/client.go:291) and is passed to neither Job builder (grep overdeploy/andnvca/deployments/returns zero hits). An operator following the shippedexamples/config-dev.yaml— which really does setvault-system-dev— getsos.Getenv("")inside the pod, the static list, and "All N quorum StatefulSet(s) Ready" with OpenBao's Raft quorum never examined: the exact silent drop the comment at 1568 says it prevents.TestControlPlaneNamespaceSet_HonoursOpenBaoOverrideis green only becauset.Setenvmutates the test process.Adding
VALIDATOR_ROLE(andNVCF_OPENBAO_NAMESPACE) to the CronJob env block would make this PR's work reachable — and would also make the RBAC gap flagged on checks.go:1766 a live outage rather than a latent one, so the two need to land together.