Krolyxon
Commit 8756c54

Branches

Tags

Refs →

bench51.githubworkflowsci.yml

52 lines · 1.5 KB · YAML

1name: CI
2
3on:
4 push:
5 branches: [master]
6 pull_request:
7
8# A newer push to the same branch or PR supersedes the running check.
9concurrency:
10 group: ci-${{ github.ref }}
11 cancel-in-progress: true
12
13env:
14 CARGO_TERM_COLOR: always
15
16jobs:
17 build:
18 name: ${{ matrix.os }}
19 strategy:
20 fail-fast: false
21 matrix:
22 os: [ubuntu-latest, windows-latest, macos-latest]
23 runs-on: ${{ matrix.os }}
24 steps:
25 - uses: actions/checkout@v7
26 - uses: dtolnay/rust-toolchain@stable
27 with:
28 components: clippy
29 - name: Install Linux GUI dependencies
30 if: runner.os == 'Linux'
31 run: |
32 sudo apt-get update
33 sudo apt-get install -y libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libxkbcommon-dev libssl-dev
34 - uses: Swatinem/rust-cache@v2
35 - run: cargo build --workspace --release --locked
36 - run: cargo test --workspace --locked
37 - run: cargo clippy --workspace --all-targets --locked -- -D warnings
38
39 scripts:
40 name: install scripts
41 runs-on: ubuntu-latest
42 steps:
43 - uses: actions/checkout@v7
44 - name: shellcheck install.sh
45 run: shellcheck install.sh
46 - name: PSScriptAnalyzer install.ps1
47 shell: pwsh
48 run: |
49 # Write-Host is the right tool for an installer piped into iex.
50 $issues = Invoke-ScriptAnalyzer -Path install.ps1 -Severity Warning,Error -ExcludeRule PSAvoidUsingWriteHost
51 $issues | Format-Table -AutoSize
52 if ($issues) { exit 1 }