mirror of
https://github.com/BradGroux/veritas-kanban.git
synced 2026-10-08 20:57:51 +00:00
Clarifies that macOS is the only v5 GA desktop release target and keeps Linux/Windows artifacts labeled as preview-only validation outputs. Closes #645.
150 lines
4.2 KiB
YAML
150 lines
4.2 KiB
YAML
name: Desktop Artifacts
|
|
|
|
on:
|
|
pull_request:
|
|
branches: [main]
|
|
paths:
|
|
- 'desktop/**'
|
|
- 'server/**'
|
|
- 'web/**'
|
|
- 'shared/**'
|
|
- 'docs/DESKTOP-RELEASE.md'
|
|
- 'scripts/desktop-after-pack.mjs'
|
|
- 'scripts/prepare-desktop-release.mjs'
|
|
- 'package.json'
|
|
- 'pnpm-lock.yaml'
|
|
- 'pnpm-workspace.yaml'
|
|
- '.github/workflows/desktop-artifacts.yml'
|
|
workflow_dispatch:
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
env:
|
|
NODE_VERSION: '22'
|
|
|
|
jobs:
|
|
mac-unsigned:
|
|
name: Unsigned macOS Artifact
|
|
runs-on: macos-15
|
|
steps:
|
|
- uses: actions/checkout@v6
|
|
|
|
- uses: pnpm/action-setup@v6
|
|
|
|
- uses: actions/setup-node@v6
|
|
with:
|
|
node-version: ${{ env.NODE_VERSION }}
|
|
cache: pnpm
|
|
|
|
- name: Install dependencies
|
|
run: pnpm install --frozen-lockfile
|
|
|
|
- name: Build workspace
|
|
run: pnpm build
|
|
|
|
- name: Prepare desktop runtime payload
|
|
run: pnpm --filter @veritas-kanban/desktop package:prepare
|
|
|
|
- name: Build unsigned macOS DMG and update metadata
|
|
working-directory: desktop
|
|
env:
|
|
CSC_IDENTITY_AUTO_DISCOVERY: 'false'
|
|
run: node ./node_modules/electron-builder/cli.js --mac dmg zip --publish never --config.mac.identity=null --config.mac.notarize=false
|
|
|
|
- name: Upload desktop artifacts
|
|
uses: actions/upload-artifact@v7
|
|
with:
|
|
name: veritas-kanban-mac-unsigned
|
|
path: |
|
|
desktop/release/*.dmg
|
|
desktop/release/*.zip
|
|
desktop/release/*.yml
|
|
desktop/release/*.blockmap
|
|
if-no-files-found: error
|
|
retention-days: 14
|
|
|
|
linux-unsigned:
|
|
name: Unsigned Linux Artifacts
|
|
runs-on: ubuntu-24.04
|
|
steps:
|
|
- uses: actions/checkout@v6
|
|
|
|
- uses: pnpm/action-setup@v6
|
|
|
|
- uses: actions/setup-node@v6
|
|
with:
|
|
node-version: ${{ env.NODE_VERSION }}
|
|
cache: pnpm
|
|
|
|
- name: Install Linux packaging tools
|
|
run: sudo apt-get update && sudo apt-get install -y --no-install-recommends fakeroot libarchive-tools rpm
|
|
|
|
- name: Install dependencies
|
|
run: pnpm install --frozen-lockfile
|
|
|
|
- name: Build workspace
|
|
run: pnpm build
|
|
|
|
- name: Prepare desktop runtime payload
|
|
run: pnpm --filter @veritas-kanban/desktop package:prepare
|
|
|
|
- name: Build unsigned Linux preview AppImage, deb, and rpm artifacts
|
|
working-directory: desktop
|
|
env:
|
|
CSC_IDENTITY_AUTO_DISCOVERY: 'false'
|
|
run: node ./node_modules/electron-builder/cli.js --linux AppImage deb rpm --x64 --publish never
|
|
|
|
- name: Upload Linux preview desktop artifacts
|
|
uses: actions/upload-artifact@v7
|
|
with:
|
|
name: veritas-kanban-linux-unsigned
|
|
path: |
|
|
desktop/release/*.AppImage
|
|
desktop/release/*.deb
|
|
desktop/release/*.rpm
|
|
desktop/release/*.yml
|
|
desktop/release/*.blockmap
|
|
if-no-files-found: error
|
|
retention-days: 14
|
|
|
|
windows-unsigned:
|
|
name: Unsigned Windows Artifacts
|
|
runs-on: windows-2025
|
|
steps:
|
|
- uses: actions/checkout@v6
|
|
|
|
- uses: pnpm/action-setup@v6
|
|
|
|
- uses: actions/setup-node@v6
|
|
with:
|
|
node-version: ${{ env.NODE_VERSION }}
|
|
cache: pnpm
|
|
|
|
- name: Install dependencies
|
|
run: pnpm install --frozen-lockfile
|
|
|
|
- name: Build workspace
|
|
run: pnpm build
|
|
|
|
- name: Prepare desktop runtime payload
|
|
run: pnpm --filter @veritas-kanban/desktop package:prepare
|
|
|
|
- name: Build unsigned Windows preview NSIS and ZIP artifacts
|
|
working-directory: desktop
|
|
env:
|
|
CSC_IDENTITY_AUTO_DISCOVERY: 'false'
|
|
run: node ./node_modules/electron-builder/cli.js --win nsis zip --x64 --publish never
|
|
|
|
- name: Upload Windows preview desktop artifacts
|
|
uses: actions/upload-artifact@v7
|
|
with:
|
|
name: veritas-kanban-windows-unsigned
|
|
path: |
|
|
desktop/release/*.exe
|
|
desktop/release/*.zip
|
|
desktop/release/*.yml
|
|
desktop/release/*.blockmap
|
|
if-no-files-found: error
|
|
retention-days: 14
|