Skip to content

fix: update HTML snapshots for new locales and add compressed field t… #35

fix: update HTML snapshots for new locales and add compressed field t…

fix: update HTML snapshots for new locales and add compressed field t… #35

Workflow file for this run

name: CI
on:
push:
branches: [main, master]
pull_request:
jobs:
test-sqlite:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: dtolnay/rust-toolchain@stable
with:
components: clippy
- uses: Swatinem/rust-cache@v2
with:
key: sqlite
- name: Check
run: cargo check --no-default-features --features sqlite
- name: Clippy
run: cargo clippy --no-default-features --features sqlite -- -D warnings
- name: Test
run: cargo test --no-default-features --features sqlite
# DB-backed integration suite (tests/ingestion.rs). The HTTP black-box
# suite (tests/integration.rs) needs a live, seeded server and stays on
# `make test-integration`; see the note in ci.yml's postgres job.
- name: Integration tests (DB-backed)
run: cargo test --no-default-features --features sqlite,integration-tests --test ingestion
audit:
name: cargo-deny advisories
runs-on: ubuntu-latest
# Warn, don't block: advisories surface as PR annotations + in the log, but
# an unfixed transitive CVE never stalls an unrelated PR. The GitHub Security
# tab / Dependabot drive remediation. Flip this off to make CVEs gate merges.
continue-on-error: true
steps:
- uses: actions/checkout@v6
- uses: EmbarkStudios/cargo-deny-action@v2
with:
command: check advisories
test-postgres:
runs-on: ubuntu-latest
services:
postgres:
image: postgres:16
env:
POSTGRES_USER: stackpit
POSTGRES_PASSWORD: stackpit
POSTGRES_DB: stackpit_test
ports:
- 5432:5432
options: >-
--health-cmd pg_isready
--health-interval 5s
--health-timeout 5s
--health-retries 5
env:
DATABASE_URL: postgres://stackpit:stackpit@localhost:5432/stackpit_test
steps:
- uses: actions/checkout@v6
- uses: dtolnay/rust-toolchain@stable
with:
components: clippy
- uses: Swatinem/rust-cache@v2
with:
key: postgres
- name: Check
run: cargo check --no-default-features --features postgres
- name: Clippy
run: cargo clippy --no-default-features --features postgres -- -D warnings
- name: Test
run: cargo test --no-default-features --features postgres -- --test-threads=1
# DB-backed integration suite against the Postgres service above. Single
# threaded: every test shares one database and resets it with the dynamic
# TRUNCATE in db::open_test_pool, so they must not interleave.
#
# The HTTP black-box suite (tests/integration.rs) is intentionally not run
# here: it needs a live `stackpit serve` plus a Python-seeded dataset and
# an admin token from stackpit.toml. Wiring that into CI means building the
# binary, generating a config + master key, starting the server on two
# ports, and running scripts/generate-fake-data.py before the suite. It
# stays on `make test-integration` for now.
- name: Integration tests (DB-backed)
run: cargo test --no-default-features --features postgres,integration-tests --test ingestion -- --test-threads=1