Files
qdrant/.github/workflows/edge-rust-release.yml
dependabot[bot] d30359bd8e build(deps): bump astral-sh/setup-uv from 7.6.0 to 8.0.0 (#8551)
Bumps [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) from 7.6.0 to 8.0.0.
- [Release notes](https://github.com/astral-sh/setup-uv/releases)
- [Commits](37802adc94...cec208311d)

---
updated-dependencies:
- dependency-name: astral-sh/setup-uv
  dependency-version: 8.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-31 09:43:11 +02:00

106 lines
2.9 KiB
YAML

name: Qdrant Edge Rust Release
on:
workflow_dispatch:
inputs:
publish:
description: 'Publish to crates.io'
type: boolean
default: false
required: true
jobs:
edge-rust-check:
name: Check Qdrant Edge Rust Package [${{ matrix.os }}]
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- macos-latest
- ubuntu-24.04-arm
- ubuntu-latest
- windows-11-arm
- windows-latest
steps:
- name: Checkout Qdrant
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Install Rust
uses: dtolnay/rust-toolchain@631a55b12751854ce901bb631d5902ceb48146f7 # stable
- name: Install mold
if: startsWith(matrix.os, 'ubuntu')
uses: rui314/setup-mold@725a8794d15fc7563f59595bd9556495c0564878 # v1
- name: Install Just
# TODO: switch to extractions/setup-just@f8a3cce218d9f83db3a2ecd90e41ac3de6cdfd9b # v3.1.0 once this PR is merged:
# https://github.com/extractions/setup-crate/pull/8
uses: xzfc/setup-just@fb4bb125d47d4680296d3f3766c6ec83f70b3523
- name: Install uv
uses: astral-sh/setup-uv@cec208311dfd045dd5311c1add060b2062131d57 # v8.0.0
- name: Install ast-grep
run: uv tool install ast-grep-cli
- name: Setup Qdrant (for testing examples)
id: setup-qdrant
# No Qdrant release for Windows ARM yet.
# So, build only, but not test.
if: matrix.os != 'windows-11-arm'
uses: ./.github/actions/setup-qdrant
- name: Restore Rust build cache
uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2
- name: Prepare data files (for testing examples)
if: steps.setup-qdrant.conclusion == 'success'
working-directory: lib/edge
run: just prepare-data
- name: Build examples
working-directory: lib/edge
run: just rs-examples-build
- name: Run examples
if: steps.setup-qdrant.conclusion == 'success'
working-directory: lib/edge
run: just rs-examples
publish:
name: Publish to crates.io
runs-on: ubuntu-latest
needs:
- edge-rust-check
if: inputs.publish
steps:
- name: Install Rust
uses: dtolnay/rust-toolchain@631a55b12751854ce901bb631d5902ceb48146f7 # stable
- name: Install uv
uses: astral-sh/setup-uv@cec208311dfd045dd5311c1add060b2062131d57 # v8.0.0
- name: Install ast-grep
run: uv tool install ast-grep-cli
- name: Checkout Qdrant
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Amalgamate
run: uv run lib/edge/publish/amalgamate.py
- name: Publish to crates.io
working-directory: lib/edge/publish
env:
CARGO_REGISTRY_TOKEN: ${{ secrets.CRATES_IO_TOKEN_EDGE }}
run: cargo publish -p qdrant-edge --no-verify