diff --git a/.woodpecker.yml b/.woodpecker.yml new file mode 100644 index 0000000..4fa2bca --- /dev/null +++ b/.woodpecker.yml @@ -0,0 +1,50 @@ +steps: + + cargo_fmt: + image: rust:1.75 + environment: + # store cargo data in repo folder so that it gets cached between steps + CARGO_HOME: .cargo_home + commands: + - cargo fmt -- --check + + frontend_wasm_build: + image: rust:1.75 + environment: + CARGO_HOME: .cargo_home + commands: + - "rustup target add wasm32-unknown-unknown" + - "cargo check --target wasm32-unknown-unknown --features csr,hydrate --no-default-features" + + check_diesel_schema: + image: willsquire/diesel-cli + environment: + CARGO_HOME: .cargo_home + DATABASE_URL: postgres://ibis:password@database:5432/ibis + commands: + - diesel migration run + - diesel print-schema --config-file=diesel.toml > tmp.schema + - diff tmp.schema src/backend/database/schema.rs + + cargo_clippy: + image: rust:1.75 + environment: + CARGO_HOME: .cargo_home + commands: + - cargo clippy --tests --all-targets --all-features + + cargo_test: + image: rust:1.75 + environment: + LEMMY_DATABASE_URL: postgres://ibis:password@database:5432/ibis + RUST_BACKTRACE: "1" + CARGO_HOME: .cargo_home + commands: + - cargo test --no-fail-fast + +services: + database: + image: postgres:15.2-alpine + environment: + POSTGRES_USER: ibis + POSTGRES_PASSWORD: password \ No newline at end of file