-
-
Notifications
You must be signed in to change notification settings - Fork 238
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
A better CI setup #195
Comments
I think we'll gain a lot of time by caching Docker images. There's a good-looking tutorial here: http://www.rundef.com/fast-travis-ci-docker-build We could also do more to run tests in parallel: https://docs.travis-ci.com/user/speeding-up-the-build/#parallelizing-your-builds-across-virtual-machines |
To save on test run time, you could consider removing |
After meeting with @heewa this morning I start to have a better understanding of how our setup is not optimal. We probably have a decent approach but we need to improve further ;) |
So, in a nutshell, the feedback was this:
|
https://medium.com/welldone-software/an-overview-of-javascript-testing-in-2018-f68950900bc3 has many options to consider |
As of b31ab4a we now have both 1. and 2. implemented. Next: speeding things up as latest build took 6 min 15 sec ! |
Speeding up can be achieved in 2 ways:
|
Closing as we now have caching and I am not sure we can make smart parallelization at this point... |
We are using Travis-CI to run our tests on Pull Requests.
The current setup involves using docker-compose to build an setup in which we can do tests. This setup has 2 services:
tests.sh
.When adding new test suites (we currently only test
smart-contracts
andunlock-app
) you need to updatetests.sh
.The travis-ci config is "strange":
We first build the cluster: so far so good, but then we also run it and ask it to terminate when a container exits. That second instruction should probably not in
before_install
. Also we should probably terminate properly.This setup is probably what is causing #194? (the error does happen but for some reason
test.sh
continues it execution...Finally, running CI already takes about 5 minutes while this is a very early project. There are ways to optimize that building process.
The text was updated successfully, but these errors were encountered: