Added travis build script.

This commit is contained in:
Daniel Scalzi 2018-04-08 13:30:25 -04:00
parent 07946714cc
commit 9b4a2d4ef9
No known key found for this signature in database
GPG Key ID: 5CA2F145B63535F9
3 changed files with 92 additions and 9 deletions

51
.travis.yml Normal file
View File

@ -0,0 +1,51 @@
matrix:
include:
- os: osx
osx_image: xcode9.2
language: node_js
node_js: "8"
env:
- ELECTRON_CACHE=$HOME/.cache/electron
- ELECTRON_BUILDER_CACHE=$HOME/.cache/electron-builder
- ELECTRON_BUILDER_ALLOW_UNRESOLVED_DEPENDENCIES=true
- os: linux
services: docker
language: generic
env:
- ELECTRON_BUILDER_ALLOW_UNRESOLVED_DEPENDENCIES=true
cache:
directories:
- node_modules
- $HOME/.cache/electron
- $HOME/.cache/electron-builder
before_install:
- |
if [ "$TRAVIS_OS_NAME" == "osx" ]; then
mkdir -p /tmp/git-lfs && curl -L https://github.com/github/git-lfs/releases/download/v2.3.1/git-lfs-$([ "$TRAVIS_OS_NAME" == "linux" ] && echo "linux" || echo "darwin")-amd64-2.3.1.tar.gz | tar -xz -C /tmp/git-lfs --strip-components 1
export PATH="/tmp/git-lfs:$PATH"
fi
before_script:
- git lfs pull
script:
- |
if [ "$TRAVIS_OS_NAME" == "linux" ]; then
docker run --rm \
--env-file <(env | grep -iE 'DEBUG|NODE_|ELECTRON_|YARN_|NPM_|CI|CIRCLE|TRAVIS|APPVEYOR_|CSC_|_TOKEN|_KEY|AWS_|STRIP|BUILD_') \
-v ${PWD}:/project \
-v ~/.cache/electron:/root/.cache/electron \
-v ~/.cache/electron-builder:/root/.cache/electron-builder \
electronuserland/builder:wine \
/bin/bash -c "npm install && npm run travislinux"
else
npm run travisdarwin
fi
before_cache:
- rm -rf $HOME/.cache/electron-builder/wine
branches:
except:
- "/^v\\d+\\.\\d+\\.\\d+$/"

27
package-lock.json generated
View File

@ -1288,6 +1288,23 @@
"debug": "2.6.9", "debug": "2.6.9",
"mkdirp": "0.5.0", "mkdirp": "0.5.0",
"yauzl": "2.4.1" "yauzl": "2.4.1"
},
"dependencies": {
"minimist": {
"version": "0.0.8",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
"integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=",
"dev": true
},
"mkdirp": {
"version": "0.5.0",
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz",
"integrity": "sha1-HXMHam35hs2TROFecfzAWkyavxI=",
"dev": true,
"requires": {
"minimist": "0.0.8"
}
}
} }
}, },
"extsprintf": { "extsprintf": {
@ -1969,10 +1986,9 @@
"dev": true "dev": true
}, },
"mkdirp": { "mkdirp": {
"version": "0.5.0", "version": "0.5.1",
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
"integrity": "sha1-HXMHam35hs2TROFecfzAWkyavxI=", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
"dev": true,
"requires": { "requires": {
"minimist": "0.0.8" "minimist": "0.0.8"
}, },
@ -1980,8 +1996,7 @@
"minimist": { "minimist": {
"version": "0.0.8", "version": "0.0.8",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
"integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0="
"dev": true
} }
} }
}, },

View File

@ -6,6 +6,8 @@
"main": "index.js", "main": "index.js",
"scripts": { "scripts": {
"start": "electron index.js", "start": "electron index.js",
"travislinux": "electron-builder --linux --win",
"travisdarwin": "electron-builder --mac",
"dist": "SET ELECTRON_BUILDER_ALLOW_UNRESOLVED_DEPENDENCIES=true & electron-builder", "dist": "SET ELECTRON_BUILDER_ALLOW_UNRESOLVED_DEPENDENCIES=true & electron-builder",
"dist:win": "npm run dist -- --win --x64", "dist:win": "npm run dist -- --win --x64",
"dist:mac": "npm run dist -- --mac", "dist:mac": "npm run dist -- --mac",
@ -17,12 +19,12 @@
}, },
"repository": { "repository": {
"type": "git", "type": "git",
"url": "git+https://gitlab.com/westeroscraft/electronlauncher.git" "url": "git+https://github.com/WesterosCraftCode/ElectronLauncher.git"
}, },
"author": "Daniel Scalzi", "author": "Daniel Scalzi",
"license": "AGPL-3.0", "license": "AGPL-3.0",
"bugs": { "bugs": {
"url": "https://gitlab.com/westeroscraft/electronlauncher/issues" "url": "https://github.com/WesterosCraftCode/ElectronLauncher/issues"
}, },
"homepage": "http://www.westeroscraft.com/", "homepage": "http://www.westeroscraft.com/",
"dependencies": { "dependencies": {
@ -32,6 +34,7 @@
"ejs": "^2.5.7", "ejs": "^2.5.7",
"ejs-electron": "^2.0.1", "ejs-electron": "^2.0.1",
"jquery": "^3.3.1", "jquery": "^3.3.1",
"mkdirp": "^0.5.1",
"request-promise-native": "^1.0.5", "request-promise-native": "^1.0.5",
"tar-fs": "^1.16.0", "tar-fs": "^1.16.0",
"uuid": "^3.2.1", "uuid": "^3.2.1",
@ -51,9 +54,23 @@
"output": "dist" "output": "dist"
}, },
"win": { "win": {
"target": "portable", "target": [
{
"target": "nsis",
"arch": "x64"
}
],
"icon": "build/icon.ico" "icon": "build/icon.ico"
}, },
"nsis": {
"oneClick": false,
"perMachine": true,
"allowElevation": true,
"installerIcon": "build/icon.ico",
"uninstallerIcon": "build/icon.ico",
"installerHeader": "build/icon.ico",
"installerHeaderIcon": "build/icon.ico"
},
"mac": { "mac": {
"target": "dmg", "target": "dmg",
"category": "public.app-category.games", "category": "public.app-category.games",