Enable cache #203
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: Continuous integration | |
on: [push] | |
jobs: | |
check: | |
name: Check | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/[email protected] | |
- uses: Swatinem/rust-cache@v2 | |
- run: cargo check | |
test: | |
name: Test Suite | |
runs-on: ubuntu-latest | |
env: | |
DATABASE_URL: postgres://bookshelf:password@localhost:5432/bookshelf | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/[email protected] | |
- uses: Swatinem/rust-cache@v2 | |
- run: sudo systemctl start postgresql.service | |
- run: pg_isready | |
- run: sudo -u postgres psql --command="CREATE USER bookshelf PASSWORD 'password'" --command="\du" postgres | |
- run: sudo -u postgres createdb --owner=bookshelf bookshelf | |
- uses: cargo-bins/cargo-binstall@main | |
- run: cargo binstall --force --no-confirm sqlx-cli | |
- run: sqlx migrate run | |
- run: cargo test -- --include-ignored | |
test-image-building: | |
name: Test Image Building | |
runs-on: ubuntu-latest | |
steps: | |
- uses: docker/build-push-action@v6 | |
with: | |
push: false | |
cache-from: type=gha | |
cache-to: type=gha,mode=max | |
fmt: | |
name: Rustfmt | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/[email protected] | |
with: | |
components: rustfmt | |
- uses: Swatinem/rust-cache@v2 | |
- run: cargo fmt --all -- --check | |
clippy: | |
name: Clippy | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/[email protected] | |
with: | |
components: clippy | |
- uses: Swatinem/rust-cache@v2 | |
- run: cargo clippy -- -D warnings |