* Use / for probes instead of /readyz The new implementation of /readyz does not work well together with how StatefulSets do roll outs and restarts * Fix test
Qdrant helm repository
This repository hosts the following helm charts:
Usage
helm repo add qdrant https://qdrant.github.io/qdrant-helm
Running tests
This repository has unit and integration tests for the charts. All charts are also linted.
Linting
Linting is done with helm lint.
Prerequisites:
- Helm
brew install helm
To lint all charts:
make lint
Unit tests
Unit tests are in the ./test directory and written in Go with terratest.
Prerequisites:
- Go
brew install go
To run the tests:
make test-unit
Integration tests
Integration tests are in the ./test/integration directory and written with bats.
There is an additional simple Helm test in ./charts/qdrant/templates/tests.
Prerequisites:
- Docker
- Kind
- Kubectl
- Helm
- Bats
brew install helm kubectl kind bats-core homebrew/cask/docker
To run the tests:
make test-integration
Releasing
Generally, we choose to release a new chart when there are important new releases to Qdrant or important chart-related changes.
- Check the release notes of qdrant/qdrant to see if any environment variables or other settings need to be adjusted.
- Sync your local clone/fork of the qdrant-helm repo:
git checkout main && git pull - Checkout a new feature branch:
git checkout -b feat/<name>/qdrant-<version> - Edit
Chart.yamlto bump the appVersion and chartVersion. - Edit
Chart.yamlto updateartifacthub.io/changesto mention the new changes. - Edit
charts/CHANGELOG.mdto mention the same changes - Edit the root
CHANGELOG.mdto mention the same changes- Why so many changelog changes? Each changelog file is for a different audience (artifacthub, chart browsing, github browsing). This could be automated in the future.
- Push your changes to GitHub and create a pull request. This allows the integration tests to run.
As soon as these changes are merged to main, there is a github action that detects changes to Chart.yaml which will perform the remainder of the release operations (creating a github release, publishing the helm chart, updating index.html for the github pages site, etc.)