Skip to content

fix(ci): capture electron-builder stderr in AppVeyor build #213

fix(ci): capture electron-builder stderr in AppVeyor build

fix(ci): capture electron-builder stderr in AppVeyor build #213

Workflow file for this run

name: crossover-ci
on:
push:
branches:
- dev
- main
- release
jobs:
crossover-ci-mac:
runs-on: macos-latest
steps:
# Make sure build is clean and no files from a previous run are re-used.
- name: Cleanup files before run
run: |
rm -rf *
if: ${{ always() }}
- uses: actions/checkout@v6
# Check memory and cpu
- name: Verify Runner Resources
run: |
sysctl -n machdep.cpu.brand_string
vm_stat | perl -ne '/page size of (\d+)/ and $size=$1; /Pages\s+([^:]+)[^\d]+(\d+)/ and printf("%-16s % 16.2f Mi\n", "$1:", $2 * $size / 1048576);'
- name: Get Node Version
run: |
echo "nodeversion=$(cat .nvmrc)" >> $GITHUB_OUTPUT
id: get-node-version
- name: Use Node.js ${{ steps.get-node-version.outputs.nodeversion }}
uses: actions/setup-node@v6
with:
node-version: ${{ steps.get-node-version.outputs.nodeversion }}
- name: Install Dependencies
run: |
env
echo "node: $(node --version)"
echo "npm: $(npm --version)"
echo "yarn: $(yarn --version)"
npm install --openssl_fips=""
- name: Lint
run: npm run lint
- name: Check Dependencies
run: npm run depcheck
# - name: Unpackaged Test πŸ§ͺ
# run: npm run test
- name: Build
run: |
npm run build:mac --openssl_fips=""
env:
# Set CI flag to false, or the build fails on all warnings, not just errors as locally.
CI: false
# - name: Package App
# run: |
# npm run pack
# # Check Binary Sizes
# - name: Build Succeeded
# run: |
# ls -alh dist | grep Monokle && du -sh dist/mac || true
# if: ${{ success() }}
# # - name: E2E Test for Electron πŸ§ͺ
# # run: npm run test
- name: Upload Test Results πŸ—ƒ
if: always()
uses: actions/upload-artifact@v6
with:
name: dist
path: dist/*
crossover-ci-windows:
runs-on: windows-latest
steps:
# Make sure build is clean and no files from a previous run are re-used.
- name: Cleanup files before run
run: |
cmd /r dir
if: ${{ always() }}
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it.
- name: Checkout Project
uses: actions/checkout@v6
- name: Get Node Version
run: |
Set-PSDebug -Trace 1
$filePath = ".nvmrc"
Get-Content $filePath -Raw
$content = Get-Content $filePath -Raw
echo "nodeversion=$content" >> $GITHUB_OUTPUT
id: get-node-version
- name: Use Node.js ${{ steps.get-node-version.outputs.nodeversion }}
uses: actions/setup-node@v6
with:
node-version: ${{ steps.get-node-version.outputs.nodeversion }}
# Install Dependencies
- name: Install Dependencies
run: |
Set-PSDebug -Trace 1
node --version
npm --version
yarn --version
npm install
# - name: Unpackaged Test πŸ§ͺ
# run: npm run test
- name: Build
run: |
npm run build:win
env:
# Set CI flag to false, or the build fails on all warnings, not just errors as locally.
# We use circle as ci
CI: false
- name: Prepare Microsoft Defender submission archive
if: github.ref == 'refs/heads/release'
shell: pwsh
run: |
$installers = Get-ChildItem -Path dist -File -Include *.exe,*.msi -Recurse
if (-not $installers) {
Write-Host "No Windows installers were found in dist; skipping Defender submission archive."
exit 0
}
Compress-Archive -Path $installers.FullName -DestinationPath "defender-submission.zip" -Force
- name: Upload Microsoft Defender submission archive
if: github.ref == 'refs/heads/release'
uses: actions/upload-artifact@v6
with:
name: microsoft-defender-submission
path: defender-submission.zip
if-no-files-found: ignore
# # Check Binary Sizes
# - name: Build Succeeded
# run: |
# cmd /r dir .\dist
# if: ${{ success() }}
# - name: E2E Test for Electron πŸ§ͺ
# run: npm run ui-test
# - name: Upload Test Results πŸ—ƒ
# if: always()
# uses: actions/upload-artifact@v4
# with:
# name: playwright-output
# path: test-output/**