name: Build and test on: push: branches: [ master ] paths-ignore: - "docs/**" - "settings.sample.yaml" - "README.md" - "LICENSE" pull_request: branches: [ master ] paths-ignore: - "docs/**" - "settings.sample.yaml" - "README.md" - "LICENSE" env: CARGO_TERM_COLOR: always DATABASE_URL: sqlite:./cache/metadata.sqlite SQLX_OFFLINE: true jobs: clippy: runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - run: rustup component add clippy - uses: actions-rs/clippy-check@v1 with: token: ${{ secrets.GITHUB_TOKEN }} args: --all-features build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Build run: cargo build --verbose - name: Run tests run: cargo test --verbose sqlx-check: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Install sqlx-cli run: cargo install sqlx-cli - name: Initialize database run: mkdir -p cache && sqlite3 cache/metadata.sqlite < db_queries/init.sql - name: Check sqlx statements run: cargo sqlx prepare --check