Frontend refactor #958
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
branches: | |
- master | |
defaults: | |
run: | |
shell: bash | |
jobs: | |
check: | |
name: Check | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Download actionlint | |
id: actionlint | |
run: | |
bash <(curl | |
https://raw.githubusercontent.com/rhysd/actionlint/main/scripts/download-actionlint.bash) | |
- name: Check workflow | |
run: ${{ steps.actionlint.outputs.executable }} -color | |
client: | |
name: Client | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Info | |
run: | | |
node --version | |
npm --version | |
- name: Install dependencies | |
run: npm ci | |
- name: Build | |
run: npm run build | |
- name: Format | |
run: npm run format-check | |
- name: Lint | |
run: npm run lint | |
- name: Test | |
run: npm run cy:e2e | |
coverage: | |
name: Coverage | |
runs-on: macos-latest | |
env: | |
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
RUSTFLAGS: --deny warnings | |
MS_CLIENT_ID: ${{ secrets.MS_CLIENT_ID }} | |
MS_CLIENT_SECRET: ${{ secrets.MS_CLIENT_SECRET }} | |
MS_REDIRECT_URI: ${{ secrets.MS_REDIRECT_URI }} | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Install toolchain | |
id: toolchain | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
target: x86_64-unknown-linux-musl | |
override: true | |
components: llvm-tools-preview | |
- uses: Swatinem/rust-cache@v1 | |
- name: Install mongodb | |
run: | | |
brew tap mongodb/brew | |
brew install [email protected] | |
brew services start [email protected] | |
- name: Install grcov | |
run: cargo install grcov | |
- name: Run coverage script | |
run: ./bin/coverage release | |
- name: Upload to codecov.io | |
uses: codecov/codecov-action@v3 | |
with: | |
files: coverage/*.lcov | |
server: | |
name: Server | |
runs-on: macos-latest | |
env: | |
RUSTFLAGS: --deny warnings | |
MS_CLIENT_ID: ${{ secrets.MS_CLIENT_ID }} | |
MS_CLIENT_SECRET: ${{ secrets.MS_CLIENT_SECRET }} | |
MS_REDIRECT_URI: ${{ secrets.MS_REDIRECT_URI }} | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Install rust toolchain components | |
uses: actions-rs/toolchain@v1 | |
with: | |
components: clippy, rustfmt | |
override: true | |
toolchain: stable | |
- uses: Swatinem/rust-cache@v1 | |
- name: Install mongodb | |
run: | | |
brew tap mongodb/brew | |
brew install [email protected] | |
brew services start [email protected] | |
- name: Info | |
run: | | |
rustup --version | |
cargo --version | |
cargo clippy --version | |
- name: Forbid | |
run: | | |
brew install ripgrep | |
./bin/forbid | |
- name: Build | |
run: cargo build --workspace --all-features --all-targets | |
- name: Lockfile | |
run: cargo update --locked --package server | |
- name: Lint | |
run: ./bin/clippy | |
- name: Format | |
run: cargo fmt --all -- --check | |
- name: Test | |
run: cargo test --workspace --all-features --all-targets |