1
0
Fork 0
Commit graph

51 commits

Author SHA1 Message Date
Mikhail Goncharov
6c2410440e Run bazel builds in premerge
if user is a member of "bazel_build" https://reviews.llvm.org/project/view/107/
or modified /utils/bazel/*

For #328
2021-07-28 16:01:44 +02:00
Mikhail Goncharov
7aebf9d969 invoke phabtalk standalone 2021-04-27 11:59:00 +02:00
Mikhail Goncharov
1d3a3049bb More accurate commands to reproduce build
Added command to create a link to a compilation database and switch
directory to run tidy and format.
2021-01-11 15:42:11 +01:00
Mikhail Goncharov
681fbbe2cf Process results and unit-test output of libcxx
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
2020-11-25 15:29:50 +01:00
Mikhail Goncharov
43fae020f5 retry most of the requests with backoff
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
2020-10-12 17:08:34 +02:00
Mikhail Goncharov
5cd16dde45 Don't fail if phabricator target is not specified
That is useful when testing pipelines
2020-10-05 13:33:19 +02:00
Mikhail Goncharov
c082f1aa9b Organize scripts
Move all .py that are supposed to be run as __main__ under ./scripts
so there is no need to manipulate sys.path to import modules.

Runby cleanup
2020-10-02 14:18:22 +02:00
Mikhail Goncharov
8b36ff5888 remove jenkins configs and scrips
- moved linux agents to a new node pool (basically renamed old one)

- removed some out of date scripts or moved them to playlists

- removed shell scrips invoked from jenkins

- minor docs updates

Some python classes methods are not used anymore and will be cleaned up
separately.
2020-09-01 09:51:49 +02:00
Mikhail Goncharov
6bf3c85cc6 Print commands to reproduce build locally
- additional arguments to set enabled projects, log level and reset
cache.
2020-07-09 15:31:34 +02:00
Mikhail Goncharov
017ca44a75 Add windows build
- configured sccache on buildkite windows machines
- final result is sent to phabricator from "summary.py" that waits for both builds to complete
- extracted "add_url_artifact" to a runnable script
- reorganized code and fixed some of TODOs
2020-06-03 13:40:22 +02:00
Mikhail Goncharov
d796cfec6d fix typo 2020-05-26 12:54:31 +02:00
Mikhail Goncharov
8eee5355ea building with buildkite 2020-05-25 16:42:40 +02:00
Christian Kühnel
971d4b8b74 fixes #175 2020-05-06 12:41:58 +02:00
Christian Kühnel
06ca090e8c fixes #149 2020-03-25 07:37:25 +01:00
Christian Kühnel
9f41b8768b added log output
To get more data to analyze #149
2020-03-25 07:26:55 +01:00
Mikhail Goncharov
814517c89e add link to a full diff 2020-03-10 14:28:56 +01:00
Mikhail Goncharov
3ee08f18bc Ignore 'No relevant changes found.' text 2020-03-10 13:46:49 +01:00
Mikhail Goncharov
3bf868ec83 add link to build log 2020-03-10 13:07:26 +01:00
Mikhail Goncharov
dee5385784 Truncate clang-format comments
If clang format diff is longer that 11 lines only show first 10 and add
note about omitted ones.

for #144
2020-03-10 11:59:25 +01:00
Mikhail Goncharov
70df407e0e Add name of build agent to summary 2020-02-19 17:48:51 +01:00
Mikhail Goncharov
c1396546e5 Remove empty lines at the end of clang-tidy report 2020-02-19 16:17:50 +01:00
Christian Kühnel
63ad2d1be6 retrying on phab.update_interfaces() 2020-02-19 12:08:18 +01:00
Christian Kühnel
22ce8e9632 handling broken XML files 2020-02-18 09:55:30 +01:00
Christian Kühnel
71240e7473 fixed types 2020-02-17 16:42:41 +00:00
Christian Kühnel
3b593e36cf no error message when no clang-tidy/format files given 2020-02-17 16:34:00 +00:00
ChristianKuehnel
f6ad5451a1
Improving phabtalk (#128)
* enabled dryrun for add_artifact
2020-02-17 10:23:47 +01:00
Mikhail Goncharov
fd5c753c69 small style fixes 2020-02-07 14:50:47 +01:00
Mikhail Goncharov
6b6558e22c Add reason of failure on top of summary 2020-02-07 12:30:39 +01:00
Mikhail Goncharov
41581c95be format failed tests results 2020-02-07 09:04:41 +01:00
Mikhail Goncharov
6012e873b5 ignore successfull 4 byte clang tidy report 2020-02-07 08:16:35 +01:00
Mikhail Goncharov
144354bc04 Generate HTML summary instead of adding comment
+ reworked phab-talk, now it's a class instead of free functions
2020-02-06 16:49:42 +01:00
Mikhail Goncharov
0519b5a4e3 Attach artifacts to build
Generate test summary HTML
2020-02-06 14:24:31 +01:00
Christian Kühnel
d75abdd172 fixed type errors 2020-01-30 17:45:57 +01:00
Mikhail Goncharov
562adb1b90 fix format string 2020-01-23 18:01:07 +01:00
Mikhail Goncharov
429c70ddc9 fix links 2020-01-23 14:13:42 +01:00
Mikhail Goncharov
a3f6610df2 Update bot report
- add links to join beta and report issue
- add link "not useful" to clang-tidy warning
- clang-tidy comment in report now tells how many inline comments were
  added
2020-01-23 13:35:40 +01:00
Mikhail Goncharov
276978ff1f Ignore selected paths for clang-format and clang-tidy
Now clang-format report will skip files matching `clang-format.ignore`.
For now it's empty.

clang-tidy will not receive diffs for `clang-tidy.ignore` (it still can
produce warnings for these files).
In addition build bot will not will not post comments for files
that are matched by `clang-tidy-comments.ignore`. Now project/file should
be whitelisted to receive inline comments from clang-tidy.

Added all /test directories to `clang-tidy.ignore`.

Other alternatives considered:

- using 'compile_commands.json': does not contain header files.
- specifying -regex option to 'clang-tidy-diff': probably not the best
  experience of providing multiple rules and maintaining a single regex.
2020-01-22 19:05:36 +01:00
Mikhail Goncharov
453aa2ae84 Run clang-tidy and parse message
+ don't assume that clang-format has passed if there is no file.
  If linters didn't run at all file will be missing.
+ add "gray" icon for the result if it's unknown.
+ assume whole build is failed if clang-format or clang-tidy found something.
+ combine multiple lint messages per line.
2019-12-17 11:00:30 +01:00
Mikhail Goncharov
8d390ff370 Refactor Phabricator report construction
Now report is constructed by adding more data from several stages and
represents internal structure rather what API expects.

+ Made all function that don't interact with phabricator free standing
+ Now links list all files in results directory
+ Status icons

Example comment: https://reviews.llvm.org/D71197#1779176 (links don't work).
2019-12-11 14:36:20 +01:00
Mikhail Goncharov
7faaec98e7 Attach diffs produced by git-clang-format as lint messages.
E.g.: https://reviews.llvm.org/D71197?id=233029
Will add a link to file and code to apply the patch in the next PR.

+ don't create TARGET_DIR in scripts;
+ updated section about local build;
+ partially specified inputs / outputs of scripts so it's more transparent what are the results;
+ added symlink to compile_command.json (clang-tidy will need it);
+ add IDEA files to .gitignore.
2019-12-11 08:55:38 +01:00
Christian Kühnel
0be0498203 fix handling of compile errors
addresses #63
2019-11-21 15:04:39 +01:00
Christian Kühnel
db831d4c0e only posting non-empty comments 2019-11-18 16:22:43 +01:00
Christian Kühnel
c96a2d158c making feedback upload more relaxed if files are missing 2019-11-18 16:00:14 +01:00
Christian Kühnel
48567c02fe added retry on errors 2019-11-05 09:31:43 +01:00
Christian Kühnel
ba0f07ffb4 added status output 2019-10-24 09:41:19 -07:00
Christian Kühnel
a6abec98d4 handling missing test result file as failted build 2019-10-24 04:41:57 -07:00
Christian Kühnel
ca68a7f47d improved build result report 2019-10-17 17:11:17 +02:00
Christian Kühnel
e46b8172e0 added help for weird API 2019-10-16 13:52:29 +02:00
Christian Kühnel
b67aeb4714 added host parameter 2019-10-16 11:54:38 +02:00
Christian Kühnel
539dacd5b5 posting text comments and test results to Phabricator works #14 2019-10-15 18:12:19 +02:00