[libcxx-commits] [PATCH] D99862: [libc++] [CI] Validate the output of the generated scripts.
Mark de Wever via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Wed Apr 7 09:14:01 PDT 2021
Mordante updated this revision to Diff 335835.
Mordante added a comment.
Implement a wait.
The build should fail and stop after the failure.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D99862/new/
https://reviews.llvm.org/D99862
Files:
libcxx/utils/ci/buildkite-pipeline.yml
libcxx/utils/ci/run-buildbot
libcxx/utils/generate_header_inclusion_tests.py
Index: libcxx/utils/generate_header_inclusion_tests.py
===================================================================
--- libcxx/utils/generate_header_inclusion_tests.py
+++ libcxx/utils/generate_header_inclusion_tests.py
@@ -23,7 +23,7 @@
# For example, [algorithm.syn] contains "#include <initializer_list>".
#
mandatory_inclusions = {
- "algorithm": ["initializer_list"],
+ "algorithm": ["Initializer_list"],
"array": ["compare", "initializer_list"],
"bitset": ["iosfwd", "string"],
"chrono": ["compare"],
Index: libcxx/utils/ci/run-buildbot
===================================================================
--- libcxx/utils/ci/run-buildbot
+++ libcxx/utils/ci/run-buildbot
@@ -132,6 +132,17 @@
# Check if the diff is empty, fail otherwise.
! grep -q '^--- a' ${BUILD_DIR}/clang-format.patch
;;
+check-generated-output)
+ clean
+ echo "+++ Checking the output of the generated scripts"
+ mkdir -p ${BUILD_DIR}
+ python3 libcxx/utils/generate_feature_test_macro_components.py
+ python3 libcxx/utils/generate_header_inclusion_tests.py
+ python3 libcxx/utils/generate_header_tests.py
+ git diff | tee ${BUILD_DIR}/generated_output.patch
+ # Check if the diffs are empty, fail otherwise.
+ ! grep -q '^--- a' ${BUILD_DIR}/generated_output.patch
+;;
generic-cxx03)
export CC=clang
export CXX=clang++
Index: libcxx/utils/ci/buildkite-pipeline.yml
===================================================================
--- libcxx/utils/ci/buildkite-pipeline.yml
+++ libcxx/utils/ci/buildkite-pipeline.yml
@@ -28,6 +28,24 @@
soft_fail:
- exit_status: 1
+ - label: "Generated output"
+ command: "libcxx/utils/ci/run-buildbot check-generated-output"
+ artifact_paths:
+ - "**/generated_output.patch"
+ agents:
+ queue: "libcxx-builders"
+ retry:
+ automatic:
+ - exit_status: -1 # Agent was lost
+ limit: 2
+
+ # All jobs defined before this `wait` will run whenever a CI job is started.
+ # Jobs defined after the `wait` will run only if all the jobs above
+ # succeeded. The build failures before this `wait` can be fixed by running
+ # the proper scripts or clang-format. We use this to reduce the load on the
+ # testers and avoid running builds that we know fail anyway.
+ - wait
+
- label: "C++03"
command: "libcxx/utils/ci/run-buildbot generic-cxx03"
artifact_paths:
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D99862.335835.patch
Type: text/x-patch
Size: 2424 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20210407/a82b8015/attachment.bin>
More information about the libcxx-commits
mailing list