|
1 | | -name: Continuous integration |
2 | | -on: [push, pull_request, merge_group] |
| 1 | +name: CI |
3 | 2 |
|
4 | | -env: |
5 | | - RUSTFLAGS: "-Dwarnings" |
6 | | - RUSTDOCFLAGS: "-Dwarnings" |
7 | | - TYPST_TESTS_EXTENDED: true |
| 3 | +on: |
| 4 | + push: |
8 | 5 |
|
9 | 6 | jobs: |
10 | | - # This allows us to have one branch protection rule for the full test matrix. |
11 | | - # See: https://github.com/orgs/community/discussions/4324 |
12 | | - tests: |
13 | | - name: Tests |
14 | | - runs-on: ubuntu-latest |
15 | | - needs: [test-matrix] |
16 | | - if: always() |
| 7 | + textlint-md: |
| 8 | + runs-on: ubuntu-24.04 |
17 | 9 | steps: |
18 | | - - name: Tests successful |
19 | | - if: ${{ !(contains(needs.*.result, 'failure')) }} |
20 | | - run: exit 0 |
21 | | - - name: Tests failing |
22 | | - if: ${{ contains(needs.*.result, 'failure') }} |
23 | | - run: exit 1 |
| 10 | + - name: Checkout the repository |
| 11 | + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4 |
| 12 | + - name: Setup tools |
| 13 | + uses: jdx/mise-action@d6e32c1796099e0f1f3ac741c220a8b7eae9e5dd # v2 |
| 14 | + - name: Install dependencies |
| 15 | + run: bun install --frozen-lockfile |
| 16 | + - name: Lint Markdown using textlint |
| 17 | + run: bun run --bun textlint-md |
24 | 18 |
|
25 | | - test-matrix: |
26 | | - name: Tests |
27 | | - strategy: |
28 | | - matrix: |
29 | | - os: [ubuntu-latest, windows-latest] |
30 | | - runs-on: ${{ matrix.os }} |
| 19 | + textlint-html: |
| 20 | + runs-on: ubuntu-24.04 |
31 | 21 | steps: |
32 | | - - uses: actions/checkout@v4 |
33 | | - |
34 | | - - uses: Swatinem/rust-cache@v2 |
35 | | - - run: cargo test --workspace --no-run |
36 | | - - run: cargo test --workspace --no-fail-fast |
37 | | - |
38 | | - checks: |
39 | | - name: Check clippy, formatting, and documentation |
40 | | - runs-on: ubuntu-latest |
41 | | - steps: |
42 | | - - uses: actions/checkout@v4 |
43 | | - |
44 | | - with: |
45 | | - components: clippy, rustfmt |
46 | | - - uses: Swatinem/rust-cache@v2 |
47 | | - - run: cargo clippy --workspace --all-targets --all-features |
48 | | - - run: cargo fmt --check --all |
49 | | - - run: cargo doc --workspace --no-deps |
50 | | - |
51 | | - min-version: |
52 | | - name: Check minimum Rust version |
53 | | - runs-on: ubuntu-latest |
54 | | - steps: |
55 | | - - uses: actions/checkout@v4 |
56 | | - |
57 | | - - uses: Swatinem/rust-cache@v2 |
58 | | - - run: cargo check --workspace |
59 | | - |
60 | | - fuzz: |
61 | | - name: Check fuzzers |
62 | | - runs-on: ubuntu-latest |
63 | | - steps: |
64 | | - - uses: actions/checkout@v4 |
65 | | - - uses: dtolnay/rust-toolchain@master |
66 | | - with: |
67 | | - toolchain: nightly-2024-06-01 |
68 | | - - uses: Swatinem/rust-cache@v2 |
69 | | - - run: cargo install --locked [email protected] |
70 | | - - run: cd tests/fuzz && cargo fuzz build --dev |
| 22 | + - name: Checkout the repository |
| 23 | + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4 |
| 24 | + - name: Setup tools |
| 25 | + uses: jdx/mise-action@d6e32c1796099e0f1f3ac741c220a8b7eae9e5dd # v2 |
| 26 | + - name: Install dependencies |
| 27 | + run: bun install --frozen-lockfile |
| 28 | + - name: Lint HTML using textlint |
| 29 | + run: bun run --bun textlint-html |
0 commit comments