echo/.forgejo/workflows/ci.yml
Jean 7d1edefb70
All checks were successful
CI / check (push) Successful in 3m54s
CI: install cmake for aws-lc-sys (rustls crypto backend)
rustls 0.23 pulls aws-lc-sys, which compiles AWS-LC via cmake; the node
image has gcc/make but not cmake, so add it (plus clang) before the
build.
2026-07-15 00:12:57 +00:00

31 lines
1.1 KiB
YAML

# Build, lint, and test on every push and pull request. Adjust `runs-on` to a
# label your Forgejo runner advertises (commonly `ubuntu-latest` or `docker`).
name: CI
on:
push:
branches: [main]
pull_request:
jobs:
check:
runs-on: ubuntu-latest
# A Node image, because the JS-based actions/checkout needs `node` in the
# container. Rust is installed on top; a rust:* image has no node.
container:
image: node:20-bookworm
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Build, lint, and test
run: |
set -e
# cmake + a C compiler for aws-lc-sys (rustls's crypto backend). The
# node image already ships gcc/g++/make; protoc is vendored in build.rs.
apt-get update && apt-get install -y --no-install-recommends cmake clang
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --profile minimal -c clippy
. "$HOME/.cargo/env"
cargo build --workspace --locked
cargo clippy --workspace --locked -- -D warnings
cargo test --workspace --locked