Fork of https://github.com/oxigraph/oxigraph.git for the purpose of NextGraph project
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
oxigraph/.github/workflows/build.yml

98 lines
2.4 KiB

name: build
on:
push:
branches:
- master
pull_request:
branches:
- master
schedule:
- cron: "0 0 * * 0"
jobs:
fmt:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- run: rustup update
- run: rustup component add rustfmt
- run: cargo fmt -- --check
clippy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- run: rustup update
- run: rustup component add clippy
- run: cargo clippy --all-targets --all-features
test:
strategy:
matrix:
os: [ ubuntu-latest, windows-latest ]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v2
with:
submodules: true
- run: rustup update
- run: cargo build
- run: cargo test --all-features
env:
RUST_BACKTRACE: 1
test_wasm:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- run: rustup update
- run: cargo install wasm-pack
- run: wasm-pack test --node
working-directory: ./lib
js:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- run: rustup update
- run: cargo install wasm-pack
- run: npm install
working-directory: ./js
- run: npm test
working-directory: ./js
python:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- run: rustup update
- uses: actions/setup-python@v2
with:
python-version: 3.8
- run: python -m venv python/venv
- run: source python/venv/bin/activate && pip install --upgrade pip 'maturin>=0.9.2,<0.10' sphinx
- run: source venv/bin/activate && maturin develop
working-directory: ./python
- run: source ../venv/bin/activate && python -m unittest
working-directory: ./python/tests
- run: source ../venv/bin/activate && sphinx-build -M doctest . build
working-directory: ./python/docs
- run: source ../venv/bin/activate && sphinx-build -M html . build
working-directory: ./python/docs
python_wheel:
runs-on: ${{ matrix.os }}
needs: python
strategy:
matrix:
os: [ ubuntu-latest, macos-latest, windows-latest ]
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
with:
python-version: 3.6
- run: pip install 'maturin>=0.9.2,<0.10'
- run: maturin build
working-directory: ./python