Skip to content

Commit

Permalink
refactor!: separate extensions, and more
Browse files Browse the repository at this point in the history
  • Loading branch information
gadomski authored Oct 19, 2024
1 parent 0b84bec commit 3b6b3c7
Show file tree
Hide file tree
Showing 45 changed files with 494 additions and 1,251 deletions.
40 changes: 0 additions & 40 deletions .github/workflows/api.yml

This file was deleted.

193 changes: 129 additions & 64 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,90 +15,67 @@ env:
CARGO_TERM_VERBOSE: true

jobs:
test:
runs-on: ubuntu-latest
test-core:
name: Test stac
runs-on: ${{ matrix.os }}
strategy:
matrix:
os:
- ubuntu-latest
- macos-latest
- windows-latest
steps:
- uses: actions/checkout@v4
- uses: Swatinem/rust-cache@v2
- name: Install GDAL
run: |
sudo apt-get update
sudo apt-get install libgdal-dev
- name: Test
run: cargo test --lib
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: Swatinem/rust-cache@v2
- name: Install GDAL
run: |
sudo apt-get update
sudo apt-get install libgdal-dev
- name: Fmt
run: cargo fmt
- name: Clippy
run: cargo clippy --all --all-features
check:
run: cargo test -p stac --all-features
test-api:
name: Test stac-api
runs-on: ubuntu-latest
strategy:
matrix:
chunk:
- 1
- 2
- 3
steps:
- uses: actions/checkout@v4
- uses: Swatinem/rust-cache@v2
- name: Install GDAL
run: |
sudo apt-get update
sudo apt-get install libgdal-dev
- name: Install check-all-features
run: cargo install cargo-all-features
- name: Check
run: cargo check-all-features --n-chunks 3 --chunk ${{ matrix.chunk }}
check-nightly:
- name: Test
run: cargo test -p stac-api --all-features
test-cli:
name: Test stac-cli
runs-on: ubuntu-latest
defaults:
run:
working-directory: cli
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@nightly
- uses: Swatinem/rust-cache@v2
- name: Install GDAL
run: |
sudo apt-get update
sudo apt-get install libgdal-dev
- name: Check
run: cargo check --all --all-features
doc:
- uses: actions/setup-python@v5
with:
python-version: 3.x
- uses: astral-sh/setup-uv@v3
with:
enable-cache: true
- name: Test
run: cargo test -F duckdb/bundled --all-features
- name: Install
run: uv sync
- name: Smoke test
run: uv run stacrs --version
test-duckdb:
name: Test stac-duckdb
runs-on: ubuntu-latest
env:
RUSTDOCFLAGS: -Dwarnings
steps:
- uses: actions/checkout@v4
- uses: Swatinem/rust-cache@v2
- name: Install GDAL
run: |
sudo apt-get update
sudo apt-get install libgdal-dev
- name: Doc
run: cargo doc --all-features
validate-stac-server:
- name: Test
run: cargo test -p stac-duckdb -F duckdb/bundled
test-extensions:
name: Test stac-extensions
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: Swatinem/rust-cache@v2
- uses: actions/setup-python@v5
with:
python-version: "3.10"
- uses: astral-sh/setup-uv@v3
with:
enable-cache: true
- name: Install Python dependencies
run: uv sync --extra stac-api-validator
- name: Validate
run: uv run scripts/validate-stac-server
validate-stac-server-pgstac:
- name: Test
run: cargo test -p stac-extensions
test-pgstac:
name: Test pgstac
runs-on: ubuntu-latest
services:
pgstac:
Expand All @@ -121,11 +98,99 @@ jobs:
- uses: astral-sh/setup-uv@v3
with:
enable-cache: true
- name: Test
run: cargo test -p pgstac
- name: Install Python dependencies
run: uv sync --extra stac-api-validator
- name: Validate
run: uv run scripts/validate-stac-server --pgstac
test-python:
name: Test stacrs (python)
runs-on: ubuntu-latest
defaults:
run:
working-directory: python
steps:
- uses: actions/checkout@v4
- uses: Swatinem/rust-cache@v2
- uses: actions/setup-python@v5
with:
python-version: 3.x
- uses: astral-sh/setup-uv@v3
with:
enable-cache: true
- name: Install
run: uv sync
- name: Check
run: uv run ruff check && uv run ruff format --check && uv run mypy .
- name: Test
run: uv run pytest
test-server:
name: Test stac-server
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: Swatinem/rust-cache@v2
- uses: actions/setup-python@v5
with:
python-version: "3.x"
- uses: astral-sh/setup-uv@v3
with:
enable-cache: true
- name: Test
run: cargo test -p stac-server --all-features
- name: Install Python dependencies
run: uv sync --extra stac-api-validator
- name: Validate
run: uv run scripts/validate-stac-server
lint:
name: Lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: Swatinem/rust-cache@v2
- name: Fmt
run: cargo fmt
- name: Clippy
run: cargo clippy --all --all-features
check-feature-combinations:
name: Check feature combinations
runs-on: ubuntu-latest
strategy:
matrix:
chunk:
- 1
- 2
- 3
- 4
steps:
- uses: actions/checkout@v4
- uses: Swatinem/rust-cache@v2
- name: Install check-all-features
run: cargo install cargo-all-features
- name: Check
run: cargo check-all-features --n-chunks 4 --chunk ${{ matrix.chunk }}
check-nightly:
name: Check (nightly)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@nightly
- uses: Swatinem/rust-cache@v2
- name: Check
run: cargo check --workspace --all-features
doc:
name: Docs
runs-on: ubuntu-latest
env:
RUSTDOCFLAGS: -Dwarnings
steps:
- uses: actions/checkout@v4
- uses: Swatinem/rust-cache@v2
- name: Doc
run: cargo doc --workspace --all-features
validate-stac-geoparquet:
name: Validate stac-geoparquet
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
Expand Down
57 changes: 0 additions & 57 deletions .github/workflows/cli.yml

This file was deleted.

49 changes: 0 additions & 49 deletions .github/workflows/core.yml

This file was deleted.

2 changes: 1 addition & 1 deletion .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,5 +30,5 @@ jobs:
run: uv sync --extra docs && uv sync --no-dev --inexact --project stacrs
- name: Deploy
run: |
VERSION=$(git describe --tags --match="v*" --abbrev=0)
VERSION=$(git describe --tags --match="python-v*" --abbrev=0)
uv run mike deploy $VERSION latest --update-aliases --push
Loading

0 comments on commit 3b6b3c7

Please sign in to comment.