Skip to content

build: 🔥 remove unused dependency #429

build: 🔥 remove unused dependency

build: 🔥 remove unused dependency #429

Workflow file for this run

name: CI/CD
on:
- push
- workflow_dispatch
env:
CARGO_TERM_VERBOSE: true
CARGO_TERM_COLOR: always
RUSTFLAGS: "-Dwarnings"
jobs:
cargo-check:
name: Cargo Check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: cargo check
working-directory: rust-othello
cargo-test:
name: Cargo Test Suite
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: cargo test
working-directory: rust-othello
cargo-fmt:
name: Rustfmt
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: cargo fmt --check
working-directory: rust-othello
cargo-clippy:
name: Clippy
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: cargo clippy
working-directory: rust-othello
build:
name: Build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
cache: "npm"
- name: install wasm-pack
run: curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh
- run: npm ci
- run: npm run build
- name: Upload dist
uses: actions/upload-artifact@v4
with:
name: dist
path: dist
- name: Upload pkg
uses: actions/upload-artifact@v4
with:
name: pkg
path: rust-othello/pkg
prettier:
name: Prettier
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
cache: "npm"
- run: npm ci
- run: npm run prettier
eslint:
name: ESLint
runs-on: ubuntu-latest
needs: build
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
cache: "npm"
- run: npm ci
- name: Download pkg
uses: actions/download-artifact@v4
with:
name: pkg
path: rust-othello/pkg
- run: npm run lint
lhci-file:
name: Lighthouse (file)
runs-on: ubuntu-latest
needs: build
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
cache: "npm"
- name: Download dist
uses: actions/download-artifact@v4
with:
name: dist
path: dist
- name: run Lighthouse CI
run: |
npm install -g @lhci/cli@latest
lhci autorun
env:
LHCI_GITHUB_APP_TOKEN: ${{ secrets.LHCI_GITHUB_APP_TOKEN }}
deploy:
name: Deploy
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/main'
needs: build
concurrency: firebase-deploy
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
cache: "npm"
- name: install wasm-pack
run: curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh
- run: npm ci
- name: Download dist
uses: actions/download-artifact@v4
with:
name: dist
path: dist
- uses: FirebaseExtended/action-hosting-deploy@v0
with:
repoToken: "${{ secrets.GITHUB_TOKEN }}"
firebaseServiceAccount: "${{ secrets.FIREBASE_SERVICE_ACCOUNT_OTHELLO_RUST }}"
channelId: live
projectId: othello-rust
lhci-post-deploy:
name: Lighthouse (post-deploy)
runs-on: ubuntu-latest
needs: deploy
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
cache: "npm"
- name: run Lighthouse CI
run: |
npm install -g @lhci/cli@latest
lhci autorun --collect.url=https://othello-rust.web.app/
env:
LHCI_GITHUB_APP_TOKEN: ${{ secrets.LHCI_GITHUB_APP_TOKEN }}