mirror of
https://github.com/lancedb/lancedb.git
synced 2026-01-04 10:52:56 +00:00
Based on https://github.com/lancedb/lance/pull/4984 1. Bump to 1.0.0-beta.2 2. Use DirectoryNamespace in lance to perform all testing in python and rust for much better coverage 3. Refactor `ListingDatabase` to be able to accept location and namespace. This is because we have to leverage listing database (local lancedb connection) for using namespace, namespace only resolves the location and storage options but we don't want to bind all the way to rust since user will plug-in namespace from python side. And thus `ListingDatabase` needs to be able to accept location and namespace that are created from namespace connection. 4. For credentials vending, we also pass storage options provider all the way to rust layer, and the rust layer calls back to the python function to fetch next storage option. This is exactly the same thing we did in pylance.
79 lines
2.3 KiB
YAML
79 lines
2.3 KiB
YAML
name: Deploy docs to Pages
|
|
|
|
on:
|
|
push:
|
|
branches: ["main"]
|
|
|
|
# Allows you to run this workflow manually from the Actions tab
|
|
workflow_dispatch:
|
|
|
|
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
|
|
permissions:
|
|
contents: read
|
|
pages: write
|
|
id-token: write
|
|
|
|
# Allow one concurrent deployment
|
|
concurrency:
|
|
group: "pages"
|
|
cancel-in-progress: true
|
|
|
|
env:
|
|
# This reduces the disk space needed for the build
|
|
RUSTFLAGS: "-C debuginfo=0"
|
|
# according to: https://matklad.github.io/2021/09/04/fast-rust-builds.html
|
|
# CI builds are faster with incremental disabled.
|
|
CARGO_INCREMENTAL: "0"
|
|
PIP_EXTRA_INDEX_URL: "https://pypi.fury.io/lancedb/"
|
|
|
|
jobs:
|
|
# Single deploy job since we're just deploying
|
|
build:
|
|
environment:
|
|
name: github-pages
|
|
url: ${{ steps.deployment.outputs.page_url }}
|
|
runs-on: ubuntu-24.04
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
- name: Install dependencies needed for ubuntu
|
|
run: |
|
|
sudo apt install -y protobuf-compiler libssl-dev
|
|
rustup update && rustup default
|
|
- name: Set up Python
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: "3.10"
|
|
cache: "pip"
|
|
cache-dependency-path: "docs/requirements.txt"
|
|
- uses: Swatinem/rust-cache@v2
|
|
- name: Build Python
|
|
working-directory: python
|
|
run: |
|
|
python -m pip install --extra-index-url https://pypi.fury.io/lancedb/ -e .
|
|
python -m pip install --extra-index-url https://pypi.fury.io/lancedb/ -r ../docs/requirements.txt
|
|
- name: Set up node
|
|
uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 20
|
|
cache: 'npm'
|
|
cache-dependency-path: docs/package-lock.json
|
|
- name: Install node dependencies
|
|
working-directory: nodejs
|
|
run: |
|
|
sudo apt update
|
|
sudo apt install -y protobuf-compiler libssl-dev
|
|
- name: Build docs
|
|
working-directory: docs
|
|
run: |
|
|
PYTHONPATH=. mkdocs build
|
|
- name: Setup Pages
|
|
uses: actions/configure-pages@v2
|
|
- name: Upload artifact
|
|
uses: actions/upload-pages-artifact@v3
|
|
with:
|
|
path: "docs/site"
|
|
- name: Deploy to GitHub Pages
|
|
id: deployment
|
|
uses: actions/deploy-pages@v4
|