lbrycrd/ci
MarcoFalke 8b42db130f
Merge #16623: ci: Add environment files for all settings
fa21737ba7 ci: Add environment files for all settings (MarcoFalke)

Pull request description:

  This moves all environment settings from travis to files in the ci folder. Now, it is possible to easily run each travis configuration with a single command.

Top commit has no ACKs.

Tree-SHA512: 989c6b62eb3839eb1fa5461e986496e9660167e2438a789c7588a6fee4f9c37b332782c010fe5c7de8f606bcf98dffb2481d2777cbce88f87cc9f0c42fb2d7fc
2019-08-19 09:39:53 -04:00
..
extended_lint ci: Rename .travis/ to ./ci/ 2019-08-15 11:11:45 -04:00
lint ci: Rename .travis/ to ./ci/ 2019-08-15 11:11:45 -04:00
retry ci: Remove dependence on travis, use it as fallback env 2019-08-15 11:12:34 -04:00
test Merge #16623: ci: Add environment files for all settings 2019-08-19 09:39:53 -04:00
README.md ci: Add environment files for all settings 2019-08-16 08:46:37 -04:00
test_run_all.sh ci: Add environment files for all settings 2019-08-16 08:46:37 -04:00

ci scripts

This directory contains scripts for each build step in each build stage.

Currently three stages lint, extended_lint and test are defined. Each stage has its own lifecycle, similar to the Travis CI lifecycle. Every script in here is named and numbered according to which stage and lifecycle step it belongs to.

Running a stage locally

To allow for a wide range of tested environments, but also ensure reproducibility to some extent, the test stage requires docker to be installed. To install all requirements on Ubuntu, run

sudo apt install docker.io ccache bash git

To run the default test stage,

./ci/test_run_all.sh

To run the test stage with a specific configuration,

FILE_ENV="./ci/test/00_setup_env_arm.sh" ./ci/test_run_all.sh

Be aware that the tests will be build and run in-place, so please run at your own risk. If the repository is not a fresh git clone, you might have to clean files from previous builds or test runs first.