Skip to content

Commit fad6720

Browse files
author
MarcoFalke
committed
doc: move doc to ci readme
1 parent fa88077 commit fad6720

File tree

2 files changed

+34
-21
lines changed

2 files changed

+34
-21
lines changed

.travis.yml

Lines changed: 1 addition & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,4 @@
1-
# The test build matrix (stage: test) is constructed to test a wide range of
2-
# configurations, rather than a single pass/fail. This helps to catch build
3-
# failures and logic errors that present on platforms other than the ones the
4-
# author has tested.
5-
#
6-
# Some builders use the dependency-generator in `./depends`, rather than using
7-
# apt-get to install build dependencies. This guarantees that the tester is
8-
# using the same versions as Gitian, so the build results are nearly identical
9-
# to what would be found in a final release.
10-
#
11-
# In order to avoid rebuilding all dependencies for each build, the binaries
12-
# are cached and re-used when possible. Changes in the dependency-generator
13-
# will trigger cache-invalidation and rebuilds as necessary.
14-
#
15-
# These caches can be manually removed if necessary. This is one of the very
1+
# Travis caches can be manually removed if necessary. This is one of the very
162
# few manual operations that is possible with Travis, and it can be done by a
173
# Bitcoin Core GitHub member via the Travis web interface [0].
184
#

ci/README.md

Lines changed: 33 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,8 @@
1-
## ci scripts
1+
## CI Scripts
22

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

5-
Currently three stages `lint`, `extended_lint` and `test` are defined. Each stage has its own lifecycle, similar to the
6-
[Travis CI lifecycle](https://docs.travis-ci.com/user/job-lifecycle#the-job-lifecycle). Every script in here is named
7-
and numbered according to which stage and lifecycle step it belongs to.
8-
9-
### Running a stage locally
5+
### Running a Stage Locally
106

117
Be aware that the tests will be built and run in-place, so please run at your own risk.
128
If the repository is not a fresh git clone, you might have to clean files from previous builds or test runs first.
@@ -36,3 +32,34 @@ To run the test stage with a specific configuration,
3632
```
3733
FILE_ENV="./ci/test/00_setup_env_arm.sh" ./ci/test_run_all.sh
3834
```
35+
36+
### Configurations
37+
38+
The test files (`FILE_ENV`) are constructed to test a wide range of
39+
configurations, rather than a single pass/fail. This helps to catch build
40+
failures and logic errors that present on platforms other than the ones the
41+
author has tested.
42+
43+
Some builders use the dependency-generator in `./depends`, rather than using
44+
the system package manager to install build dependencies. This guarantees that
45+
the tester is using the same versions as the release builds, which also use
46+
`./depends`.
47+
48+
If no `FILE_ENV` has been specified or values are left out, `00_setup_env.sh`
49+
is used as the default configuration with fallback values.
50+
51+
It is also possible to force a specific configuration without modifying the
52+
file. For example,
53+
54+
```
55+
MAKEJOBS="-j1" FILE_ENV="./ci/test/00_setup_env_arm.sh" ./ci/test_run_all.sh
56+
```
57+
58+
The files starting with `0n` (`n` greater than 0) are the scripts that are run
59+
in order.
60+
61+
### Cache
62+
63+
In order to avoid rebuilding all dependencies for each build, the binaries are
64+
cached and re-used when possible. Changes in the dependency-generator will
65+
trigger cache-invalidation and rebuilds as necessary.

0 commit comments

Comments
 (0)