using metadata tags set in #298 finds and cancels existing builds before
starting a new one.
One caveat is that no result is reported back to Phabricator for the
cancelled build. That should not be an issue in the normal usecase.
For #278
Now "report" step combines result in a uniform way and processes unit test
results XML output. It works for sub-builds only started from the 'premerge'
pipeline, i.e. non-recursive. One downside is that now one has to wait until
all jobs have finished.
- Add instructions to setup python environment
- added option to do full report cycle but not call Phabricator
- use "annotations" to show build status. That lifts the need to filter ninja
and other output (thus `ph_no_filter_output` param removed) and output
everything. That is nice as script failures no longer lead to loss of logs.
- improved annotate() usability
- misc fixes
- improve messaging and add instructions how to fix the patch
- fix application of patch stack. Now base commit and order of patches
should be correct
- set origin to llvm-project fork to avoid accidental operations on origin
- use annotations to make issues visible
- create commits with original author of change
- add patches we tried to apply to artifacts
- patching / commits works locally if --push-branch=false is set
- misc renames / wordings
fixes#192
additionally:
- install python libs after scripts checkout, so we don't need to
rebuild images and restart agents only to add a new python dependency
- updated lib versions
- similar scripts checkout in steps
Previous approach had drawbacks:
- every step had to implement exporting of results in fixed format
- if step failed then failure will not be detected
Now report step will fetch results directly from Buildkite.
Agents have to be updated to have BUILDKITE_API_TOKEN env.