Kubernetes operator for PlantD.
For how to install PlantD, see installation guide.
For more information about PlantD, see PlantD website.
- Go (
>= 1.21
) - kubebuilder
- kubectl
- Prometheus Operator
- K6 Operator
To install the Prometheus Operator and K6 Operator, run the following commands:
# Install the K6 Operator
curl https://raw.githubusercontent.com/grafana/k6-operator/main/bundle.yaml | kubectl create -f -
# Install the Prometheus Operator
curl -L https://github.com/prometheus-operator/prometheus-operator/releases/download/v0.72.0/bundle.yaml | kubectl create -f -
make generate
This command will generate the auto-generated code such as zz_generated.deepcopy.go
.
NOTE: Remember to run this command after modifying the CRD.
make manifests
This command will generate the CRD manifests under config
.
NOTE: Remember to run this command after modifying the CRD.
make bundle
This command will generate the bundle.yaml
.
NOTE: Remember to run this command after modifying the CRD.
make docs
This command will generate the CRD API reference at docs/api/crd-api-reference.md
.
NOTE: Remember to run this command after modifying the CRD.
# Install
make install
# Uninstall
make uninstall
# Deploy
make deploy
# Deploy with a custom Docker image
make deploy IMG=<custom-image>
# Undeploy
make undeploy
This project uses GitHub Actions as our CI/CD pipeline and to release Docker images to GitHub Container Registry. See .github/workflows/build.yaml
for more details.
To release a new version, merge the PR into the main
branch. The CI/CD pipeline will automatically build and release the new Docker images to GitHub Container Registry.
You can also manually trigger the workflow on any branches to release a Docker image tagged by the branch name. To do so, go to the workflow page.
We welcome contributions from the open-source community, from bug fixes to new features and improvements.
PlantD is licensed under the GPLv2 License. See LICENSE for more details.
PlantD is funded by Honda's 99P labs, with implementation and ongoing support provided by the TEEL team at Carnegie Mellon University.
For more information about the PlantD project, please contact us:
- Honda 99P labs: support@99plabs.com
- TEEL Labs: teel@andrew.cmu.edu
We are always open to collaboration, questions, and suggestions!