mirror of
https://github.com/tealdeer-rs/tealdeer.git
synced 2026-08-20 15:14:18 +02:00
79 lines
2.2 KiB
YAML
79 lines
2.2 KiB
YAML
name: CI
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
- "v*.x"
|
|
pull_request:
|
|
schedule:
|
|
- cron: '30 3 * * 2'
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
test:
|
|
name: run tests
|
|
strategy:
|
|
matrix:
|
|
platform: [ubuntu-latest, ubuntu-24.04-arm, macos-latest, windows-latest]
|
|
toolchain: [stable, 1.75.0]
|
|
runs-on: ${{ matrix.platform }}
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: dtolnay/rust-toolchain@master
|
|
with:
|
|
toolchain: ${{ matrix.toolchain }}
|
|
- name: Build with default features
|
|
run: cargo build
|
|
- name: Build with logging and Rustls with webpki roots
|
|
run: cargo build --features logging,rustls-with-webpki-roots --no-default-features
|
|
- name: Build with native TLS backend
|
|
# expects runners have the proper Native SSL library
|
|
run: cargo build --features native-tls --no-default-features
|
|
- name: Run tests
|
|
run: cargo test -- --test-threads 1
|
|
|
|
clippy:
|
|
name: run clippy lints
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: dtolnay/rust-toolchain@master
|
|
with:
|
|
toolchain: stable
|
|
components: clippy
|
|
- name: run clippy lints
|
|
run: cargo clippy --features logging
|
|
|
|
fmt:
|
|
name: run rustfmt
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: dtolnay/rust-toolchain@master
|
|
with:
|
|
toolchain: stable
|
|
components: rustfmt
|
|
- name: run rustfmt
|
|
run: cargo fmt --all -- --check
|
|
|
|
docs:
|
|
name: build docs
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Setup mdBook
|
|
uses: peaceiris/actions-mdbook@v2
|
|
with:
|
|
mdbook-version: '0.4.4'
|
|
- name: Setup toolchain
|
|
uses: dtolnay/rust-toolchain@master
|
|
with:
|
|
toolchain: stable
|
|
- name: Build
|
|
run: cargo build
|
|
- name: Ensure that docs can be built
|
|
run: cd docs && mdbook build
|
|
- name: Generate usage string
|
|
run: cargo run -- --help > docs/src/usage-actual.txt
|
|
- name: Ensure that usage string is up to date
|
|
run: diff docs/src/usage{,-actual}.txt
|