Celery-Kubernetes-Operator
Celery-Kubernetes-Operator copied to clipboard
Plan till first production release
Here's the accepted CEP for the project - https://github.com/celery/ceps/blob/master/draft/celery-kubernetes-operator.rst This issue is to outline the TODOs and plan the first production-ready release for the operator.
- [x] Define the goals for the first release
- [x] Finalize the CRD template, add documentation
- [ ] Improve the handlers code and project structure/layering (Use classes to represent Celery/Flower deployments)
- [ ] Add tests for all the handlers, include coverage plugins, bring >95% test coverage
- [ ] Test the operator operations in a Kubernetes cluster under production traffic for two weeks
- [ ] Improve readme, documentation and prepare for the first release
I devote 20% of my time(Every Friday + Some part of the weekend) to this project to move things in a consistent way. Any contributions/help is welcome
A somewhat detailed task list for the first release -
- [x] Write a production-ready CRD for the cluster (https://github.com/celery/Celery-Kubernetes-Operator/pull/15)
- [x] Explore Kind for bootstrapping local Kubernetes cluster and development instead of Minikube
- [ ] Update handlers to take care of new CRD fields (WIP)
- [ ] Add support for the basic broker and result backend support for redis and RMQ
- [ ] Add tests for the handlers, achieve acceptable coverage
- [ ] Use poetry/pipenv for dependency management
- [ ] Add a CI to the repo
- [ ] Improve readme
- [ ] Write crisp, to-the-point documentation
- [ ] Add relevant badges, integrations
- [ ] Add a demo video
- [ ] Deploy to a production cluster, load test with some traffic, simulate failures of different components
- [ ] Prepare for production release - Access control, Dockerfile, Helm Chart etc