add builder interface for making servers #2995
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
# | |
# Configuration for GitHub-based CI, based on the stock GitHub Rust config. | |
# | |
name: Rust | |
on: | |
push: | |
branches: [main] | |
pull_request: | |
branches: [main] | |
env: | |
CARGO_TERM_COLOR: always | |
RUST_BACKTRACE: 1 | |
jobs: | |
check-style: | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 | |
- name: Report cargo version | |
run: cargo --version | |
- name: Report rustfmt version | |
run: cargo fmt -- --version | |
- name: Check style | |
run: cargo fmt -- --check | |
clippy-lint: | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 | |
- name: Report cargo version | |
run: cargo --version | |
- name: Report Clippy version | |
run: cargo clippy -- --version | |
- uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 # v2.7.3 | |
- name: Run Clippy Lints | |
run: cargo clippy --all-targets -- --deny warnings | |
build-and-test: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
# macos-14 for M1 runners | |
os: [ubuntu-22.04, windows-2022, macos-14] | |
features: [all, default] | |
include: | |
- features: all | |
feature_flags: --all-features | |
steps: | |
- uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 | |
- name: Report cargo version | |
run: cargo --version | |
- name: Report rustc version | |
run: rustc --version | |
- uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 # v2.7.3 | |
with: | |
# Matrix instances other than OS need to be added to this explicitly | |
key: ${{ matrix.features }} | |
- name: Build | |
run: cargo build ${{ matrix.feature_flags }} --locked --all-targets --verbose | |
- name: Run tests | |
run: cargo test ${{ matrix.feature_flags }} --locked --all-targets --verbose |