EvanZhu0721 / 公开仓库
SBMS
SBMS complete the calculation rules for the default logical desktop topology relationship and the physical dimensions of the displays in the Windows multi-screen collaboration system.
.github/workflows/ci.yml1.8 KB
1
name: CI2
3
on:4
push:5
pull_request:6
7
permissions:8
contents: read9
10
env:11
CARGO_TERM_COLOR: always12
13
jobs:14
windows:15
runs-on: windows-202216
timeout-minutes: 4017
steps:18
- uses: actions/checkout@v619
20
- name: Show pinned Rust toolchain21
shell: pwsh22
run: |23
rustup show active-toolchain24
rustc --version --verbose25
cargo --version26
27
- name: Rust formatting28
run: cargo fmt --all -- --check29
30
- name: Rust lint31
run: cargo clippy --all-targets --locked -- -D warnings32
33
- name: Rust tests34
run: cargo test --all-targets --locked35
36
- name: Install compatible Pester for PowerShell 737
shell: pwsh38
run: |39
Install-Module Pester -RequiredVersion 4.10.1 -Scope CurrentUser -Force -SkipPublisherCheck40
41
- name: PowerShell 7 tests42
shell: pwsh43
run: .\.github\scripts\invoke-pester.ps144
45
- name: Windows PowerShell 5.1 tests46
shell: powershell47
run: |48
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls1249
Install-Module Pester -RequiredVersion 4.10.1 -Scope CurrentUser -Force -SkipPublisherCheck50
.\.github\scripts\invoke-pester.ps151
52
- name: Install Inno Setup for packaging smoke53
shell: pwsh54
run: choco install innosetup --no-progress -y55
56
- name: Unsigned driver and installer build smoke57
shell: pwsh58
run: |59
$compiler = (Get-Command ISCC.exe -ErrorAction Stop).Source60
.\build-installer.ps1 -Unsigned -InnoCompiler $compiler61
$package = Get-Item '.\target\installer\SBMS-Setup-*-x64-unsigned.exe'62
$hashFile = Get-Item "$($package.FullName).sha256"63
if ($package.Length -eq 0 -or $hashFile.Length -eq 0) {64
throw 'Unsigned installer smoke artifact is empty.'65
}66