* enable coverage reports from gcc and disable optimizations via option to configure
* install googletest library into buildcache
* script to compile and run unit tests using cmake
* first set of unit tests originaly contributed by Keith Uplinger
There are several hardcoded paths and assumptions made in order to get this working on Travis CI. New tooling is using cmake for cross platform builds and as such is not easy to use with an autotools based system.
It's not ideal but better than nothing.
- Fix existing configuration of openssl and curl flag files for different Android configurations
- Make openssl and curl build more silent
This fixes#2927
Signed-off-by: Vitalii Koshura <lestat.de.lionkur@gmail.com>
Copy a weekly build from master to https://bintray.com/boinc/boinc-ci so it is available for testers. Only specified build artefacts are copied (see deploy/prepare_deploy.sh). The copy operation is triggered via a Travis CI cronjob or a pull request from within the BOINC/boinc gitub repository.
Pull requests from forks are ignored because they can not have access to the bintray API key, this is a security restriction enforced by Travis CI.
Initial Android client CI is implemented.
Some fixes in build scripts made to enable CI build cache for OpenSSL and CURL.
Signed-off-by: Vitalii Koshura <lestat.de.lionkur@gmail.com>
This is kind of embarassing as I specifically created the new travis config in #2659 so that the integration tests (not the unit tests) can use the proper PHP environment. Somehow I mixed that up. Mea culpa.
Instead of excluding unwanted jobs this now specifically includes the jobs needed. This allows to run multiple environments or languages within a single repository. This is not fully documented but was confirmed to be supported by Travis via email.
Configuration can be tested on this page: http://config.travis-ci.org/
Original idea came from this blog entry: http://axelnilsson.tech/2017/08/04/travisci-with-multi-language-repository/
Some Linux distributions are dropping webkitgtk support which is needed for wxWebView to work. This will build a second wxWidgets cache that has no webview support in order to test new code.
We currently build every BOINC component in one go on Mac. This is kind of intended as the build capacity for OSX on Travis CI is capped at 128 builds at the same time right now and extra builds will only add to the already full queue.
This reduces the size of files to be cached between builds by the CI system. The scripts are flexible enough so they can also be used by developers locally.
- An email is send only to those adresses given in .travis.yml
- Only the master branch is build
- The compiler gcc and clang are used
- The components libraries, server and client/manager are build separately
- The README.md just displays the current build status on the github mirror