shubhM13 opened a new pull request, #1049:
URL: https://github.com/apache/yunikorn-k8shim/pull/1049
Introduce a new, opt-in `queue-operator` component in the k8s-shim,
mirroring the packaging pattern used by the admission controller. The operator
watches `queue.yunikorn.k8s.io/v1alpha1` `Queue` CRs and materialises them into
the `yunikorn-configs` ConfigMap so multi-tenant queue management can be done
declaratively via CRDs instead of manual edits to a shared `queues.yaml`.
Highlights:
- New Go packages under
`pkg/queueoperator/{api/v1alpha1,controller,queueconfig}` and CLI entry point
`pkg/cmd/queueoperator` (controller-runtime based).
- Merged-config validation goes through YuniKorn's own
`configs.LoadSchedulerConfigFromByteArray`, catching invalid configs at
admission time (defence-in-depth for the scheduler).
- Envtest-backed controller suite is gated behind the `envtest` build tag so
`make test` in CI does not require kubebuilder assets.
- Makefile: adds `queue_operator` binary target and `qop_image` Docker
target. The default `make image` target is unchanged; the operator image is NOT
built unless explicitly requested (opt-in).
- Deployment manifests + README under `deployments/queue-operator/` cover
CRD, RBAC, and Deployment install flow.
- `go.mod`: pulls in `sigs.k8s.io/controller-runtime v0.24.1`.
See https://issues.apache.org/jira/browse/YUNIKORN-3192 for the design
context.
### Description
Short description of this pull request, can be as simple as the commit
message used.
First time contributing? Check out the contributing guide:
https://yunikorn.apache.org/community/how_to_contribute
### Type of change
Please delete options that are not relevant.
- [ ] Bug Fix
- [ ] Improvement
- [ X] Feature
- [ ] Refactoring
- [ ] Documentation
### Jira issue
Jira ID :
[YUNIKORN-3192](https://issues.apache.org/jira/browse/YUNIKORN-3192)
- [X ] I have created a Jira issue for this pull request.
- [ X] The Jira ID is part of the title of this pull request.
### AI Tooling
If an AI tool was used:
- [ ] The PR includes the phrase "Generated by \<tool>", where \<tool> is
the name of the AI tool used.
- [ ] My use of AI contributions follows the ASF legal policy.
Check https://www.apache.org/legal/generative-tooling.html for details.
### How has this been tested?
- [ ] New unit tests were added to cover new or changed code paths.
- [ ] `make test_all` was run, and no failures reported.
- [ ] `make e2e_test` was run, and no failures reported.
- [ ] new e2e tests have been added.
### Questions:
- [ ] The change needs documentation, a pull request for
apache/yunikorn-site repository will be created.
- [ ] There is breaking changes for older versions: jira is tagged with
`release-notes` label.
- [ ] The licenses files needs to be updated.
### Screenshots or other details
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]