Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Extensions, and more #473

Merged
merged 11 commits into from
Oct 19, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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