Skip to content

opentable/qdrant-helm

 
 

Repository files navigation

Qdrant helm repository

Qdrant documentation

This repository hosts the following helm charts:

Usage

helm repo add qdrant https://qdrant.github.io/qdrant-helm
helm repo update
helm upgrade -i your-qdrant-installation-name qdrant/qdrant

Upgrading

This helm chart installs the latest version of Qdrant by default. When a new version of Qdrant is available, upgrade the helm chart with the following commands:

helm repo update
helm upgrade your-qdrant-installation-name qdrant/qdrant

This command performs a rolling upgrade of your Qdrant cluster, updating one node at a time.

If you have overridden the Qdrant image tag in values.yaml, you will also need to update that tag before running helm upgrade.

image:
  tag: v1.8.1

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.

  1. Check the release notes of qdrant/qdrant to see if any environment variables or other settings need to be adjusted.
  2. Sync your local clone/fork of the qdrant-helm repo: git checkout main && git pull
  3. Checkout a new feature branch: git checkout -b feat/<name>/qdrant-<version>
  4. Edit Chart.yaml to bump the appVersion and chartVersion.
  5. Edit Chart.yaml to update artifacthub.io/changes to mention the new changes.
  6. Edit charts/CHANGELOG.md to mention the same changes
  7. Edit the root CHANGELOG.md to mention the same changes
    1. 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.
  8. 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.)

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 69.5%
  • Shell 22.1%
  • Smarty 8.0%
  • Makefile 0.4%