mirror of
https://github.com/4ian/GDevelop.git
synced 2025-10-15 10:19:04 +00:00
89 lines
1.9 KiB
YAML
89 lines
1.9 KiB
YAML
# AppVeyor configuration to build GDevelop app running
|
|
# on the Electron runtime (newIDE/electron-app) for Windows.
|
|
# For macOS and Linux, see the config.yml file.
|
|
|
|
version: 1.0.{build}
|
|
pull_requests:
|
|
do_not_increment_build_number: true
|
|
image: Visual Studio 2019
|
|
clone_depth: 5
|
|
# Only build
|
|
branches:
|
|
only:
|
|
- master
|
|
- /experimental-build.*/
|
|
init:
|
|
- ps: ''
|
|
install:
|
|
- ps: Install-Product node 16
|
|
# Build GDevelop.js (and run tests to ensure it works).
|
|
# (in a subshell to avoid Emscripten polluting the Node.js and npm version for the rest of the build)
|
|
- cmd: >-
|
|
cd GDevelop.js
|
|
|
|
npm -v && npm install
|
|
|
|
git clone https://github.com/juj/emsdk.git
|
|
|
|
cd emsdk
|
|
|
|
emsdk install 1.39.6
|
|
|
|
CMD /C "emsdk activate 1.39.6 && cd .. && npm run build"
|
|
|
|
cd ..\..
|
|
|
|
# Build GDevelop IDE
|
|
- cmd: >-
|
|
cd newIDE\app
|
|
|
|
npm -v && npm install
|
|
|
|
cd ..\electron-app
|
|
|
|
npm -v && npm install
|
|
|
|
cd ..\..
|
|
|
|
# Package the app for Windows (and sign it with the certificate set in environment variables).
|
|
# Don't sign the appx (it will be signed by the Microsoft Store).
|
|
build_script:
|
|
- ps: >-
|
|
cd newIDE\electron-app
|
|
|
|
node --max-old-space-size=3072 scripts/build.js --win nsis --publish=never
|
|
|
|
Remove-Item -Path Env:CSC_LINK ; Remove-Item -Path Env:CSC_KEY_PASSWORD ; node scripts/build.js --skip-app-build --win appx --publish=never
|
|
|
|
cd ..\..
|
|
|
|
# Clean dist folder to keep only installers/binaries.
|
|
- cmd: >-
|
|
DEL /F/Q/S newIDE\electron-app\dist\win-unpacked
|
|
|
|
# Run a few tests on Windows.
|
|
test_script:
|
|
- cmd: >-
|
|
cd GDevelop.js
|
|
|
|
npm test
|
|
|
|
cd ..
|
|
|
|
cd newIDE\app
|
|
|
|
npm test
|
|
|
|
cd ..\..
|
|
|
|
artifacts:
|
|
- path: newIDE\electron-app\dist
|
|
name: GDevelopWindows
|
|
|
|
# Upload artifacts (AWS) - configuration is stored on AppVeyor itself.
|
|
deploy:
|
|
- provider: Environment
|
|
name: Amazon S3 releases
|
|
- provider: Environment
|
|
name: Amazon S3 latest releases
|