Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Automatically create production build via CI #170

merged 4 commits into from Jun 14, 2017


None yet
2 participants
Copy link

commented Jun 13, 2017

After merging this pull request, any Travis pull request targeting master will automatically build the JS/CSS on the CI server and commit the changes. This means that we don't have to manually run and commit the compiled artifacts anymore.

Here is a sample auto-build commit summary:

From 35a5d12763704d29acc94b449f3ff99ae16d3e08 Mon Sep 17 00:00:00 2001
From: Travis CI <>
Date: Tue, 13 Jun 2017 10:33:02 +0000
Subject: Travis build: 30
 build/asset-manifest.json                                      | 4 ++--
 build/index.html                                               | 2 +-
 build/static/js/{main.d9fdb0ac.js => main.e51637f1.js}         | 2 +-
 build/static/js/{ =>} | 2 +-
 4 files changed, 5 insertions(+), 5 deletions(-)
 rename build/static/js/{main.d9fdb0ac.js => main.e51637f1.js} (99%)
 rename build/static/js/{ =>} (68%)

Here is a sample build that executed the auto-build travis-ci/242364464 and some of the auto-build logs for reference


Note that in order to push the auto-build commit, the Travis machine authenticates with Github via an access token. Currently, this is a token associated with my personal Github account. After merging this pull request, an administrator of ibex-dashboard should create a new access token (here) and then set this token as a secure environment variable in Travis (here).

c-w added some commits Jun 13, 2017

@c-w c-w requested a review from morsh Jun 13, 2017


This comment has been minimized.

Copy link
Contributor Author

commented Jun 13, 2017

This PR now also adds a code coverage check.


The minimum code coverage can be specified in .travis/ or in the Travis CI dashboard by setting the MIN_COVERAGE environment variable. The implementation is a bit of a hack, namely we're parsing the react-scripts-ts output via GNU tools... however this is unfortunately unavoidable because there are several bugs in the pipeline between react-scripts-ts and the underlying jest that mean that neither a jest configuration in the package.json or a file-based config are respected.

Sample build: travis-ci/242455279.

@morsh morsh merged commit 83bd12d into ibex-version-1.0 Jun 14, 2017

2 checks passed

continuous-integration/travis-ci/pr The Travis CI build passed
continuous-integration/travis-ci/push The Travis CI build passed

@c-w c-w deleted the ci-build-deploy branch Jun 14, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.