109 lines
2 KiB
YAML
109 lines
2 KiB
YAML
stages:
|
|
- build
|
|
- meta
|
|
|
|
# Cache modules in between jobs
|
|
cache:
|
|
key: ${CI_COMMIT_REF_SLUG}
|
|
paths:
|
|
- node_modules/
|
|
|
|
# Basic webapp build
|
|
build:
|
|
stage: build
|
|
image: electronuserland/builder:wine
|
|
script:
|
|
- npm install
|
|
- npm run build:web
|
|
artifacts:
|
|
name: "build"
|
|
paths:
|
|
- dist/
|
|
only:
|
|
- stable
|
|
- tags
|
|
|
|
build-nightly:
|
|
stage: build
|
|
image: electronuserland/builder:wine
|
|
script:
|
|
- npm install
|
|
- npm run build:web
|
|
artifacts:
|
|
expire_in: 1 week
|
|
name: "build"
|
|
paths:
|
|
- dist/
|
|
only:
|
|
- schedules
|
|
- web
|
|
|
|
# Electron app build
|
|
package:
|
|
stage: build
|
|
image: electronuserland/builder:wine
|
|
script:
|
|
- npm install
|
|
- npm run build:app
|
|
- npm run release
|
|
- shopt -s extglob
|
|
- mv ./release-builds/*.AppImage .
|
|
- mv ./release-builds/*.deb .
|
|
- mv ./release-builds/*.exe .
|
|
- mv ./release-builds/*.exe.blockmap .
|
|
- mv ./release-builds/?(beta*.yml|latest*.yml) .
|
|
artifacts:
|
|
name: "dist"
|
|
paths:
|
|
- "*.AppImage"
|
|
- "*.deb"
|
|
- "*.exe"
|
|
- "*.exe.blockmap"
|
|
- "latest*.yml"
|
|
- "beta*.yml"
|
|
only:
|
|
- stable
|
|
- tags
|
|
|
|
package-nightly:
|
|
stage: build
|
|
image: electronuserland/builder:wine
|
|
script:
|
|
- npm install
|
|
- npm run build:app
|
|
- npm run release
|
|
- mv ./release-builds/*.AppImage .
|
|
- mv ./release-builds/*.exe .
|
|
artifacts:
|
|
expire_in: 1 week
|
|
name: "dist"
|
|
paths:
|
|
- "*.AppImage"
|
|
- "*.exe"
|
|
only:
|
|
- schedules
|
|
- web
|
|
|
|
# Create a nupkg file for Choco package manager
|
|
meta:choco:
|
|
stage: meta
|
|
dependencies:
|
|
- package
|
|
image: patrickhuber/choco-linux
|
|
script:
|
|
- chmod +x ./app/make-nupkg.sh
|
|
- ./app/make-nupkg.sh
|
|
- cd ./release-builds/choco
|
|
- choco pack
|
|
- cd ../../
|
|
- mv ./release-builds/choco/openflexure-ev.nuspec .
|
|
- mv ./release-builds/choco/*.nupkg .
|
|
- mv ./release-builds/choco/tools .
|
|
artifacts:
|
|
name: "openflexure-ev-choco-nupkg"
|
|
paths:
|
|
- ./openflexure-ev.nuspec
|
|
- tools/chocolateyInstall.ps1
|
|
- ./*.nupkg
|
|
only:
|
|
- tags
|