From 9f6bb3563d7a311a7e5628d18210c2c263af962d Mon Sep 17 00:00:00 2001 From: Ed Santiago Date: Thu, 7 Jan 2021 13:57:35 -0700 Subject: CI: smoke test: insist on adding tests on PRs On each PR (with a few exceptions), check the list of git-touched files, and abort if no tests are added. Include instructions on how to bypass the check if tests really aren't needed. Include a hardcoded exception list for PRs that only touch a well-known subset of "safe" files: docs, .cirrus.yml, vendor, version, hack, contrib, or *.md. This list is likely to need tuning over time. Add a test suite, but not one recognized by the new script (because it's a "*.t" file), so: [NO TESTS NEEDED] Signed-off-by: Ed Santiago --- contrib/cirrus/runner.sh | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'contrib/cirrus/runner.sh') diff --git a/contrib/cirrus/runner.sh b/contrib/cirrus/runner.sh index b0060163e..e08bb5f19 100755 --- a/contrib/cirrus/runner.sh +++ b/contrib/cirrus/runner.sh @@ -31,7 +31,11 @@ function _run_smoke() { # $CIRRUS_TAG is only non-empty when executing due to a tag-push # shellcheck disable=SC2154 if [[ -z "$CIRRUS_TAG" ]]; then + # If PR consists of multiple commits, test that each compiles cleanly make .gitvalidation + + # PRs should include some way to test. + $SCRIPT_BASE/pr-should-include-tests fi } -- cgit v1.2.3-54-g00ecf