Mailspring/.travis.yml
Juan Tejada b8883cd2b7 [dev] Only bootstrap specific pkgs in postinstall for faster installs
Summary:
This commit makes it so postinstall.es6 only bootstraps the packages we
are interested in based on a new env variable, `INSTALL_TARGET`.

`INSTALL_TARGET` can be set to `cloud`, `client` or `all`, or not set at all,
and our postinstall will bootstrap the packages accordingly. This will make
build and deploy times faster.

Test Plan: manual

Reviewers: spang, halla, evan, khamidou

Reviewed By: evan, khamidou

Differential Revision: https://phab.nylas.com/D4271
2017-03-28 13:59:55 -07:00

60 lines
1.5 KiB
YAML

# The private Nylas monorepo build script. This will build a full signed
# release for the Nylas Mail client
sudo: false
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- build-essential
- clang
- fakeroot
- g++-4.8
- git
- libgnome-keyring-dev
- xvfb
- rpm
- libxext-dev
- libxtst-dev
- libxkbfile-dev
branches:
only:
- master
- /ci-.*/
- /stable.*/
matrix:
include:
- os: linux
env: NODE_VERSION=6.9 CC=gcc-4.8 CXX=g++-4.8 DEBUG="electron-packager:*" INSTALL_TARGET=client
- os: osx
env: NODE_VERSION=6.9 CC=clang CXX=clang++ SIGN_BUILD=true DEBUG="electron-packager:*" INSTALL_TARGET=client
before_install:
- openssl aes-256-cbc
-K $encrypted_faf2708e46e2_key
-iv $encrypted_faf2708e46e2_iv
-in packages/client-private-plugins/encrypted_certificates/travis/travis-files.tar.enc
-out packages/client-private-plugins/encrypted_certificates/travis/travis-files.tar
-d;
- mkdir packages/client-app/build/resources/certs;
- tar xvf packages/client-private-plugins/encrypted_certificates/travis/travis-files.tar
--directory=packages/client-app/build/resources/;
- source packages/client-app/build/resources/certs/mac/set_unix_env.sh;
install:
- git clone https://github.com/creationix/nvm.git /tmp/.nvm
- source /tmp/.nvm/nvm.sh
- nvm install $NODE_VERSION
- nvm use --delete-prefix $NODE_VERSION
script:
- npm install && npm run build-client && npm run upload-client
cache:
directories:
- node_modules
- apm/node_modules