...
As a new pull-request created, it will not immediately start compiling on the runner. Instead, it requires one Pegasus committer to add a "ready-for-testing" label to this PR. After that, the compilation and testing will begin.
...
To reduce the repeating preparation of CI, we encapsulate the building/testing environment into a docker image here: https://hub.docker.com/r/apachepegasus/ci-env.
Adding a third-party dependency
A dependency can be either added via 'apt-get' (Ubuntu) or 'yum' (Centos) or added by a 'ExternalProject_Add' function in rdsn/thirdparty/CMakeLitsts.txt.
Adding a thirdparty currently requires recompilation of all the other thirdparties (usually costs ~4mins on the self-hosted runner). It needs one Pegasus committer to add a "thirdparty-modified" label to it.