Skip to content

Commit 80f7f7f

Browse files
authored
Chroma 0.4.6 release (#10)
* feat: Added integration workflow Refs: #1 * fix: Added kubectl wait to wait for deployment to complete Refs: #1 * fix: Some issue with service. Experimenting with listing service. Refs: #1 * fix: Fixed the service issue and added matrix testing of kube versions Refs: #1 * chore: Updated test matrix to match chart kubeVersion range >=1.24 <= 1.27 Refs: #1 * fix: Fixed chart issue with boolean flags - Added further variance to the test matrix by including allowReset and isPersistent flags (no specific tests are implemented but those are coming soon) Refs: #1 * fix: Added docker image hnswlib rebuild + sqlite3 for debugging - Added a small test to ensure chroma is up and running. - Docker image rebuilt. * docs: Added small clarification how to build/push the docker image. * chore: Added bug and feature request issue templates and docker image in ghcr Refs: #2 * feat: Backup and restore feature Refs: #6 * feat: Backup and restore feature - Adding sudo to the image for fsfreeze use Refs: #6 * feat: Backup and restore feature - Making chroma user sudoer Refs: #6 * feat: Adding tests for v0.4.5 * feat: Adding Chroma 0.4.5 support to chart * feat: Updating WFs * feat: Lowering chart requirements to k8s API 1.23.0 * feat: Adding multi-platform build * fix: Moved platforms out of the matrix and directly into platform parameter of build-push action * fix: Fixed a typo in build images workflow. * chore: Removing hnswlib reinstall to check multi-arch build * feat: Adding support for Chroma 0.4.6 * chore: Updating integration tests * feat: Updating chart version and default version to 0.4.6
1 parent d5b9b61 commit 80f7f7f

File tree

8 files changed

+36
-15
lines changed

8 files changed

+36
-15
lines changed

.github/workflows/build-images-dev.yml

+15-4
Original file line numberDiff line numberDiff line change
@@ -7,33 +7,42 @@ on:
77
env:
88
REGISTRY: ghcr.io
99
IMAGE_NAME: "ghcr.io/amikos-tech/chromadb-chart/chroma"
10-
LATEST_VERSION: "0.4.5"
10+
LATEST_VERSION: "0.4.6"
1111

1212
jobs:
1313
build-images:
1414
strategy:
1515
matrix:
16-
chroma-version: [ 0.4.3, 0.4.4, 0.4.5 ]
16+
chroma-version: [ 0.4.3, 0.4.4, 0.4.5, 0.4.6 ]
1717
runs-on: ubuntu-latest
1818
steps:
1919
- name: Checkout
2020
uses: actions/checkout@v2
2121
with:
2222
fetch-depth: 0
23-
2423
- name: Log in to the Container registry
2524
uses: docker/[email protected]
2625
with:
2726
registry: ${{ env.REGISTRY }}
2827
username: ${{ github.actor }}
2928
password: ${{ secrets.GITHUB_TOKEN }}
29+
- name: Docker meta
30+
id: meta
31+
uses: docker/metadata-action@v4
32+
with:
33+
images: ${{ env.IMAGE_NAME }}
34+
- name: Set up QEMU
35+
uses: docker/setup-qemu-action@v2
36+
- name: Set up Docker Buildx
37+
uses: docker/setup-buildx-action@v2
3038
- name: Build and push release Docker image
3139
uses: docker/[email protected]
3240
if: ${{ env.LATEST_VERSION == matrix.chroma-version }}
3341
with:
3442
context: .
3543
file: image/Dockerfile
3644
push: true
45+
platforms: linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64
3746
build-args: |
3847
CHROMA_VERSION=${{ matrix.chroma-version }}
3948
tags: "${{ env.IMAGE_NAME }}:${{ matrix.chroma-version }}-dev,${{ env.IMAGE_NAME }}:canary"
@@ -44,6 +53,8 @@ jobs:
4453
context: .
4554
file: image/Dockerfile
4655
push: true
47-
build-args: |
56+
platforms: linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64
57+
labels: ${{ steps.meta.outputs.labels }}
58+
build- args: |
4859
CHROMA_VERSION=${{ matrix.chroma-version }}
4960
tags: "${{ env.IMAGE_NAME }}:${{ matrix.chroma-version }}-dev"

.github/workflows/build-images.yml

+14-4
Original file line numberDiff line numberDiff line change
@@ -7,33 +7,42 @@ on:
77
env:
88
REGISTRY: ghcr.io
99
IMAGE_NAME: "ghcr.io/amikos-tech/chromadb-chart/chroma"
10-
LATEST_VERSION: "0.4.5"
10+
LATEST_VERSION: "0.4.6"
1111

1212
jobs:
1313
build-images:
1414
strategy:
1515
matrix:
16-
chroma-version: [ 0.4.3, 0.4.4, 0.4.5 ]
16+
chroma-version: [ 0.4.3, 0.4.4, 0.4.5, 0.4.6 ]
1717
runs-on: ubuntu-latest
1818
steps:
1919
- name: Checkout
2020
uses: actions/checkout@v2
2121
with:
2222
fetch-depth: 0
23-
2423
- name: Log in to the Container registry
2524
uses: docker/[email protected]
2625
with:
2726
registry: ${{ env.REGISTRY }}
2827
username: ${{ github.actor }}
2928
password: ${{ secrets.GITHUB_TOKEN }}
29+
- name: Docker meta
30+
id: meta
31+
uses: docker/metadata-action@v4
32+
with:
33+
images: ${{ env.IMAGE_NAME }}
34+
- name: Set up QEMU
35+
uses: docker/setup-qemu-action@v2
36+
- name: Set up Docker Buildx
37+
uses: docker/setup-buildx-action@v2
3038
- name: Build and push release Docker image
3139
uses: docker/[email protected]
3240
if: ${{ env.LATEST_VERSION == matrix.chroma-version }}
3341
with:
3442
context: .
3543
file: image/Dockerfile
3644
push: true
45+
platforms: linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64
3746
build-args: |
3847
CHROMA_VERSION=${{ matrix.chroma-version }}
3948
tags: "${{ env.IMAGE_NAME }}:${{ matrix.chroma-version }},${{ env.IMAGE_NAME }}:latest"
@@ -44,6 +53,7 @@ jobs:
4453
context: .
4554
file: image/Dockerfile
4655
push: true
56+
platforms: linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64
4757
build-args: |
4858
CHROMA_VERSION=${{ matrix.chroma-version }}
49-
tags: "${{ env.IMAGE_NAME }}:${{ matrix.chroma-version }},${{ env.IMAGE_NAME }}:latest"
59+
tags: "${{ env.IMAGE_NAME }}:${{ matrix.chroma-version }}"

.github/workflows/integration-test.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ jobs:
1515
kubernetes-version: [1.23.0, 1.24.0, 1.27.3 ]
1616
isPersistent: [ true, false ]
1717
allowReset: [ true, false ]
18-
chroma-version: [ 0.4.3, 0.4.4, 0.4.5 ]
18+
chroma-version: [ 0.4.3, 0.4.4, 0.4.5, 0.4.6 ]
1919
runs-on: ubuntu-latest
2020
steps:
2121
- name: Checkout

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ helm install chroma chroma/chromadb --set chromadb.allowReset="true"
6060

6161
| Key | Type | Default | Description |
6262
|-----------------------------------|---------|---------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
63-
| `chromadb.apiVersion` | string | `0.4.3` | The ChromaDB version. Supported version `0.4.3` and `0.4.4` |
63+
| `chromadb.apiVersion` | string | `0.4.6` | The ChromaDB version. Supported version `0.4.3` and `0.4.4` |
6464
| `chromadb.allowReset` | boolean | `false` | Allows resetting the index (delete all data) |
6565
| `chromadb.isPersistent` | boolean | `true` | A flag to control whether data is persisted |
6666
| `chromadb.persistDirectory` | string | `/index_data` | The location to store the index data. This configure both chromadb and underlying persistent volume |

charts/chromadb-chart/Chart.yaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,6 @@ keywords:
1717
- ai/ml
1818
type: application
1919

20-
version: 0.1.10
20+
version: 0.1.11
2121
# chromadb version
22-
appVersion: "0.4.3"
22+
appVersion: "0.4.6"

charts/chromadb-chart/values.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ startupProbe:
9393
initialDelaySeconds: 10
9494

9595
chromadb:
96-
apiVersion: "0.4.3"
96+
apiVersion: "0.4.6"
9797
allowReset: false
9898
isPersistent: true
9999
persistDirectory: /index_data

image/Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ RUN find /chroma -mindepth 1 -maxdepth 1 ! \( -name 'chromadb' -o -name 'LICENSE
88
useradd -g chroma chroma && \
99
python -m virtualenv /chroma/venv && \
1010
. /chroma/venv/bin/activate && \
11-
pip install --force-reinstall --no-cache-dir -r /chroma/requirements.txt && \
11+
# pip install --force-reinstall --no-cache-dir -r /chroma/requirements.txt && \
1212
chown -R chroma:chroma /chroma && \
1313
apt-get update -qq && apt-get install sqlite3 sudo -y && \
1414
echo 'chroma ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers

image/docker_entrypoint.sh

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,5 @@ export CHROMA_SERVER_HTTP_PORT=${CHROMA_SERVER_HTTP_PORT:-8000}
33
export CHROMA_SERVER_LOG_CONFIG=${CHROMA_SERVER_LOG_CONFIG:-log_config.yaml}
44
export CHROMA_SERVER_HOST=${CHROMA_SERVER_HOST:-"0.0.0.0"}
55
. /chroma/venv/bin/activate
6-
pip install --force-reinstall --no-cache-dir chroma-hnswlib
6+
#pip install --force-reinstall --no-cache-dir chroma-hnswlib
77
uvicorn chromadb.app:app --workers 1 --host ${CHROMA_SERVER_HOST} --port ${CHROMA_SERVER_HTTP_PORT} --proxy-headers --log-config ${CHROMA_SERVER_LOG_CONFIG}

0 commit comments

Comments
 (0)