feat(M7): electron-builder packaging (MSI + NSIS) + electron-updater
- electron-builder.yml: msi(fixed upgradeCode)+nsis x64, asarUnpack node-pty/ssh2, npmRebuild off, publish generic for latest.yml - updater: packaged-only, OT_UPDATE_URL/OT_UPDATE_TOKEN env, ready+5s check, warn-only failures; auto-update channel is NSIS (MSI not supported by electron-updater) - scripts dist/dist:dir; win-unpacked smoke verified (native modules load)
This commit is contained in:
1 parent
fa83097528
commit
2a32ee910a
4 files changed
+110
-2
No files matched your search
@@ -0,0 +1,50 @@
|
||||
appId: site.codingplan.openterminal
|
||||
productName: OpenTerminal
|
||||
|
||||
directories:
|
||||
output: release
|
||||
|
||||
files:
|
||||
- out/**
|
||||
- package.json
|
||||
|
||||
asar: true
|
||||
asarUnpack:
|
||||
- "**/node_modules/@lydell/node-pty/**"
|
||||
- "**/node_modules/ssh2/**"
|
||||
|
||||
# @lydell/node-pty ships prebuilt binaries; do not trigger a rebuild.
|
||||
npmRebuild: false
|
||||
|
||||
# Electron-updater only supports NSIS auto-updates (MSI has no update channel).
|
||||
# The NSIS .exe + latest.yml get uploaded together; MSI is manual/enterprise only.
|
||||
win:
|
||||
target:
|
||||
- target: msi
|
||||
- target: nsis
|
||||
|
||||
msi:
|
||||
oneClick: false
|
||||
# Fixed upgrade code keeps the upgrade chain consistent across releases.
|
||||
upgradeCode: "{5ab9f79e-e4eb-4052-9df6-3af3a301ab0a}"
|
||||
artifactName: ${productName}-${version}-setup.${ext}
|
||||
# No build/icon.ico exists. The WiX template only emits <Icon> when an icon is
|
||||
# set, but the shortcut elements still reference Icon=<iconId>, so MSI linking
|
||||
# fails with LGHT0094. Disabling MSI shortcuts drops the dangling reference.
|
||||
# NSIS still creates its shortcuts independently.
|
||||
createDesktopShortcut: false
|
||||
createStartMenuShortcut: false
|
||||
|
||||
nsis:
|
||||
oneClick: false
|
||||
allowToChangeInstallationDirectory: true
|
||||
perMachine: false
|
||||
artifactName: ${productName}-${version}-setup.${ext}
|
||||
|
||||
# Declaring a publish provider makes electron-builder emit the update-info file
|
||||
# (latest.yml) into directories.output for upload. No token is stored here; the
|
||||
# main agent handles feed authentication during upload. Build runs with the
|
||||
# default publish policy, so nothing is uploaded from this script.
|
||||
publish:
|
||||
provider: generic
|
||||
url: https://git.codingplan.site/api/packages/admin/generic/openterminal-update/stable/
|
||||
Reference in new issue
Block a user