Fix WDDM memory anomalies and updater terminal takeover (#6) #20
This file contains hidden or 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
| name: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| concurrency: | |
| group: ci-${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| windows: | |
| name: Windows / MSVC | |
| runs-on: windows-latest | |
| timeout-minutes: 25 | |
| defaults: | |
| run: | |
| shell: pwsh | |
| steps: | |
| - name: Check out source | |
| uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 | |
| - name: Build and test Release | |
| run: .\build.ps1 -Configuration Release -Test | |
| - name: Verify Release PE hardening | |
| run: .\tools\verify-pe.ps1 | |
| - name: Run MSVC static analysis | |
| run: .\analyze.ps1 | |
| - name: Build and test with AddressSanitizer | |
| run: .\build.ps1 -Configuration Sanitize -Test -OutputName vgpu-mon-asan | |
| - name: Restore verified Release outputs | |
| run: | | |
| .\build.ps1 -Configuration Release -Test | |
| .\tools\verify-pe.ps1 | |
| - name: Build portable package | |
| run: .\package.ps1 -SkipBuild | |
| - name: Install pinned Inno Setup | |
| run: .\tools\install-inno.ps1 | |
| - name: Build installer | |
| run: .\installer.ps1 -SkipBuild | |
| - name: Test install, upgrade, PATH, and uninstall | |
| run: >- | |
| .\tests\test_installer.ps1 | |
| -InstallerPath (Get-ChildItem .\dist\VGPU-Mon-*-setup.exe -File).FullName | |
| - name: Stage release metadata and checksums | |
| run: .\tools\stage-release-metadata.ps1 | |
| - name: Upload release candidates | |
| uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 | |
| with: | |
| name: VGPU-Mon-${{ github.sha }} | |
| path: | | |
| dist/*.zip | |
| dist/*-setup.exe | |
| dist/install.ps1 | |
| dist/version.txt | |
| dist/SHA256SUMS.txt | |
| if-no-files-found: error | |
| retention-days: 14 |