CONTRIBUTING: add CI information
Describe briefly the details on the new runtime CI. Signed-off-by: Paul Spooren <mail@aparcar.org>
This commit is contained in:
parent
fe19272b38
commit
85b7750327
1 changed files with 35 additions and 0 deletions
|
@ -181,3 +181,38 @@ commenting and amending the proposed changes.
|
|||
| OpenSSL License | OpenSSL |
|
||||
| X11 License | X11 |
|
||||
| zlib License | Zlib |
|
||||
|
||||
## Continuous Integration
|
||||
|
||||
To simplify review and require less human resources, a CI tests all packages.
|
||||
Passing CI tests are not a hard requirement but a good indicator what the
|
||||
Buildbots will think about the proposed patch.
|
||||
|
||||
The CI builds modified packages for multiple architectures using the latest
|
||||
snapshot SDK. For supported architectures (`aarch64_generic`,
|
||||
`arm_cortex-a15_neon-vfpv4`, `i386_pentium4` and `x86_64`) an additional
|
||||
runtime test is executed. A running OpenWrt is simulated which tries to install
|
||||
created packages and runs a script called `test.sh` located next to the package
|
||||
Makefile. The script is executed with the two arguments `PKG_NAME` and
|
||||
`PKG_VERSION`. The `PKG_NAME` can be used to distinguish package variants, e.g.
|
||||
`foobar` vs. `foobar-full`. The `PKG_VERSION` can be used for a trivial test
|
||||
checking if `foobar --version` prints the correct version. `PKG_VERSION` is the
|
||||
OpenWrt version and therefore includes the `PKG_RELEASE`, which isn't usually
|
||||
part of the running programs version.
|
||||
|
||||
The following snippet show a script that tests different binaries, depending
|
||||
what IPK package was installed. The `gpsd` Makefile produces both a `gpsd` and
|
||||
a `gpsd-clients` IPK package.
|
||||
|
||||
```shell
|
||||
#!/bin/sh
|
||||
|
||||
case "$1" in
|
||||
"gpsd")
|
||||
gpsd -V 2>&1 | grep "$2"
|
||||
;;
|
||||
"gpsd-clients")
|
||||
cgps -V 2>&1 | grep "$2"
|
||||
;;
|
||||
esac
|
||||
```
|
||||
|
|
Loading…
Reference in a new issue