Skip to content

new: update electron and client version #169

new: update electron and client version

new: update electron and client version #169

name: Client macos-arm
on:
push:
paths:
- "webstack/clients/electron/**"
- ".github/workflows/**"
branches:
- dev
env:
SERVER: production
defaults:
run:
shell: bash
working-directory: webstack/clients/electron
jobs:
run:
runs-on: macos-14
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-node@v4
with:
node-version: "20"
- name: Install
run: yarn install --frozen-lockfile --silent
working-directory: webstack/clients/electron
- name: Packager
run: npx electron-packager ./ --platform=darwin --arch=arm64 --icon=s3.icns --overwrite --appCopyright="SAGE3 Team"
working-directory: webstack/clients/electron
- name: Cleanup
run: |
rm -fr SAGE3-darwin-arm64/SAGE3.app/Contents/Resources/app/node_modules/electron-installer*
rm -fr SAGE3-darwin-arm64/SAGE3.app/Contents/Resources/app/node_modules/electron-winstaller*
rm -fr SAGE3-darwin-arm64/SAGE3.app/Contents/Resources/app/node_modules/appdmg
working-directory: webstack/clients/electron
- name: Sign
env:
MACOS_CERTIFICATE: ${{ secrets.LUC_DEV_CERTIFICATE }}
MACOS_CERTIFICATE_PWD: ${{ secrets.LUC_DEV_CERTIFICATE_PASS }}
APPLE_ID: ${{ secrets.LUC_APPLE_ID }}
APPLE_ID_PWD: ${{ secrets.LUC_APPLE_ID_PWD }}
APPLE_TEAM_ID: ${{ secrets.LUC_APPLE_TEAM_ID }}
run: |
echo $MACOS_CERTIFICATE | base64 -d > certificate.p12
security create-keychain -p blabla123 build.keychain
security default-keychain -s build.keychain
security unlock-keychain -p blabla123 build.keychain
security import certificate.p12 -k build.keychain -P $MACOS_CERTIFICATE_PWD -T /usr/bin/codesign
security set-key-partition-list -S apple-tool:,apple:,codesign: -s -k blabla123 build.keychain
#/usr/bin/codesign --force --deep -s 1B03EB588B2B36D12500F0B9B5D1F0C131060E33 SAGE3-darwin-arm64/SAGE3.app -v
# Sign
npx electron-osx-sign --type=distribution --signature-flags=library --hardened-runtime --entitlements=entitlements.mac.plist --entitlements-inherit=entitlements.mac.plist SAGE3-darwin-arm64/SAGE3.app
node notarize-arm.js
working-directory: webstack/clients/electron
- name: DMG
run: npx electron-installer-dmg SAGE3-darwin-arm64/SAGE3.app SAGE3 --dmgPath=SAGE3-darwin-arm64/SAGE3-darwin-arm64.dmg --icon=s3.icns --background=images/background.png --overwrite
working-directory: webstack/clients/electron
- uses: actions/upload-artifact@v4
with:
name: SAGE3-darwin-arm64.dmg
path: webstack/clients/electron/SAGE3-darwin-arm64/SAGE3-darwin-arm64.dmg