diff --git a/.github/workflows/release-chromadb.yml b/.github/workflows/release-chromadb.yml index 34783f2036ad..19938f04b313 100644 --- a/.github/workflows/release-chromadb.yml +++ b/.github/workflows/release-chromadb.yml @@ -104,29 +104,7 @@ jobs: push: true tags: "${{ env.GHCR_IMAGE_NAME }}:${{ needs.get-version.outputs.version }},${{ env.DOCKERHUB_IMAGE_NAME }}:${{ needs.get-version.outputs.version }},${{ env.GHCR_IMAGE_NAME }}:latest,${{ env.DOCKERHUB_IMAGE_NAME }}:latest" - release-hosted: - name: Release to Chroma Cloud - runs-on: ubuntu-latest - needs: - - release-docker - steps: - - name: Checkout - uses: actions/checkout@v4 - - name: Trigger Hosted Chroma FE Release - uses: actions/github-script@v6 - with: - github-token: ${{ secrets.HOSTED_CHROMA_WORKFLOW_DISPATCH_TOKEN }} - script: | - const result = await github.rest.actions.createWorkflowDispatch({ - owner: 'chroma-core', - repo: 'hosted-chroma', - workflow_id: 'deploy-data-plane.yaml', - ref: 'main', - inputs: { - "oss-sha": "${{ github.sha }}", - } - }) release-pypi: name: Publish to PyPI @@ -268,6 +246,38 @@ jobs: removeArtifacts: true prerelease: true + release-hosted: + name: Release to Chroma Cloud + runs-on: ubuntu-latest + needs: + - release-github + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Trigger Hosted Chroma FE Release + uses: actions/github-script@v6 + with: + github-token: ${{ secrets.HOSTED_CHROMA_WORKFLOW_DISPATCH_TOKEN }} + script: | + const result = await github.rest.actions.createWorkflowDispatch({ + owner: 'chroma-core', + repo: 'hosted-chroma', + workflow_id: 'deploy.yaml', + ref: 'main', + inputs: { + // We intentionally *do not* provide the current commit SHA of chroma-core/chroma here. The workflow we dispatch defaults to the commit tagged with "latest" (which we update above). + // If we provided the current commit here, there's a potential race condition: + // - Commit history is A -> B + // - This CI workflow runs on both commits, but the second commit finishes first + // - B is deployed to Chroma Cloud + // - This workflow finishes for A and deploys A to Chroma Cloud + // Chroma Cloud is now running A, but the last commit was B. + "environment": "staging", + "planes": "data" + } + }) + release-docs: name: Deploy docs to Vercel runs-on: ubuntu-latest