This repository was archived by the owner on Feb 6, 2026. It is now read-only.
Merge pull request #182 from bytes-zone/renovate/vitest-monorepo #674
This file contains hidden or 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: | |
| env: | |
| CLICOLOR: 1 | |
| jobs: | |
| typos: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: crate-ci/typos@v1.30.1 | |
| formatting: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions-rust-lang/setup-rust-toolchain@v1 | |
| with: | |
| components: rustfmt | |
| - uses: actions-rust-lang/rustfmt@v1 | |
| clippy: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions-rust-lang/setup-rust-toolchain@v1 | |
| with: | |
| components: clippy | |
| - uses: awalsh128/cache-apt-pkgs-action@v1 | |
| with: | |
| packages: libwebkit2gtk-4.1-dev build-essential curl wget file libssl-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev libsoup-3.0-dev libjavascriptcoregtk-4.1-dev | |
| - run: cargo clippy -- --deny=warnings | |
| machete: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - uses: actions-rust-lang/setup-rust-toolchain@v1 | |
| - name: Machete | |
| uses: bnjbvr/cargo-machete@main | |
| test: | |
| runs-on: ubuntu-latest | |
| services: | |
| postgres: | |
| image: postgres | |
| env: | |
| POSTGRES_USER: beeps | |
| POSTGRES_PASSWORD: beeps | |
| options: >- | |
| --health-cmd pg_isready | |
| --health-interval 10s | |
| --health-timeout 5s | |
| --health-retries 5 | |
| ports: | |
| # Maps tcp port 5432 on service container to the host | |
| - 5432:5432 | |
| env: | |
| DATABASE_URL: postgres://beeps:beeps@localhost:5432/beeps | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - uses: actions-rust-lang/setup-rust-toolchain@v1 | |
| - uses: awalsh128/cache-apt-pkgs-action@v1 | |
| with: | |
| packages: libwebkit2gtk-4.1-dev build-essential curl wget file libssl-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev libsoup-3.0-dev libjavascriptcoregtk-4.1-dev | |
| # DB prep | |
| - run: cargo install sqlx-cli --no-default-features --features=postgres | |
| - run: sqlx migrate run --source beeps-server/migrations | |
| # Test | |
| - run: cargo test | |
| wasm-build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions-rust-lang/setup-rust-toolchain@v1 | |
| with: | |
| target: wasm32-unknown-unknown | |
| cache-directories: | | |
| target/wasm32-unknown-unknown | |
| - run: cargo install wasm-pack | |
| - run: wasm-pack build browser --out-dir $GITHUB_WORKSPACE/pkg | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: wasm | |
| path: pkg/* | |
| server-container: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions-rust-lang/setup-rust-toolchain@v1 | |
| # Build | |
| - run: cargo build --release --bin beeps-server | |
| # Container | |
| - uses: docker/setup-buildx-action@v3 | |
| - uses: docker/build-push-action@v6 | |
| with: | |
| context: . | |
| cache-from: type=gha | |
| cache-to: type=gha,mode=max | |
| ui-build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: oven-sh/setup-bun@v2 | |
| - run: bun install | |
| working-directory: ui | |
| - run: bun run build | |
| working-directory: ui | |
| ui-lint: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: oven-sh/setup-bun@v2 | |
| - run: bun install | |
| working-directory: ui | |
| - run: bun run lint | |
| working-directory: ui | |
| ui-test-unit: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: oven-sh/setup-bun@v2 | |
| - run: bun install | |
| working-directory: ui | |
| - run: bun run test:unit | |
| working-directory: ui | |
| ui-format: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: oven-sh/setup-bun@v2 | |
| - run: bun install | |
| working-directory: ui | |
| - run: bunx prettier --check src/ | |
| working-directory: ui |