orgize/.github/workflows/ci.yml
2023-11-13 16:56:18 +08:00

83 lines
1.8 KiB
YAML

name: CI
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@master
- name: Install latest stable Rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
default: true
override: true
- name: Install minimal stable with clippy and rustfmt
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: stable
components: rustfmt, clippy
- name: Run rustfmt
uses: actions-rs/cargo@v1
with:
command: fmt
args: -- --check
- name: Run clippy
uses: actions-rs/cargo@v1
with:
command: clippy
- name: Run test
uses: actions-rs/cargo@v1
with:
command: test
args: --all-features
build-wasm:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Install
run: curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh
- name: Build
run: wasm-pack build -t web -d ./wasm/dist --out-name orgize ./wasm/
- uses: actions/upload-artifact@master
with:
name: page
path: ./wasm
if-no-files-found: error
deploy:
if: github.ref == 'refs/heads/v0.10'
runs-on: ubuntu-latest
needs: build-wasm
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- uses: actions/download-artifact@master
with:
name: page
path: .
- uses: actions/configure-pages@v1
- uses: actions/upload-pages-artifact@v1
with:
path: .
- id: deployment
uses: actions/deploy-pages@main