Files
Twitch-VOD-Manager/.gitea/workflows/windows-ci.yml
T
Sucukdeluxe f4df47c89f
Windows CI / verify (push) Successful in 3m23s
ci: provision Electron before focused smoke tests
Retry Electron binary provisioning before Windows smoke tests and retain bounded retries for package and installer builds. Bump release contracts to 1.0.14.
2026-08-12 22:00:39 +02:00

79 lines
2.0 KiB
YAML

name: Windows CI
on:
push:
pull_request:
workflow_dispatch:
permissions:
contents: read
jobs:
verify:
runs-on: windows-latest
env:
CI: 'true'
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '24.11.1'
cache: npm
- name: Clean install
run: npm ci
timeout-minutes: 10
- name: Provision Electron binary
run: |
npx install-electron --no
if ($LASTEXITCODE -ne 0) {
npx install-electron --no
if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
}
timeout-minutes: 10
- name: Lint
run: npm run lint
timeout-minutes: 10
- name: Lint configuration contract
run: npm run test:lint-config
timeout-minutes: 10
- name: Security contracts
run: npm run security:check
timeout-minutes: 10
- name: Security regression tests
run: npm run test:security
timeout-minutes: 10
- name: CI contract
run: npm run test:ci-contract
timeout-minutes: 10
- name: Unit tests
run: npm run test:unit
timeout-minutes: 10
- name: Focused Electron smoke
run: npm run test:e2e:focused
timeout-minutes: 10
- name: Build
run: npm run build
timeout-minutes: 10
- name: Package directory
run: |
npm run pack
if ($LASTEXITCODE -ne 0) {
npm run pack
if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
}
timeout-minutes: 10
- name: Packaged launch smoke
run: npm run test:packaged-launch
timeout-minutes: 10
- name: Build installer
run: |
npm run dist:ci
if ($LASTEXITCODE -ne 0) {
npm run dist:ci
if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
}
timeout-minutes: 10
- name: Installer smoke
run: npm run test:installer
timeout-minutes: 10