Remove non-standard : anchors

This commit is contained in:
Michael Vines 2018-12-18 17:33:28 -08:00 committed by Grimes
parent b4fe70d3d8
commit 506724fc93
4 changed files with 22 additions and 22 deletions

View File

@ -3,23 +3,26 @@
# Checks if a CI build affects one or more path patterns. Each command-line
# argument is checked in series.
#
# Bash regular expresses are permitted in the pattern, and the colon (':')
# character is guaranteed to appear before and after each affected file (and thus
# can be used as an anchor), eg:
# .rs: -- any file or directory ending in .rs
# .rs -- also matches foo.rs.bar
# :snap/ -- anything under the snap/ subdirectory
# snap/ -- also matches foo/snap/
# Bash regular expressions are permitted in the pattern:
# ./affects-files.sh .rs$ -- any file or directory ending in .rs
# ./affects-files.sh .rs -- also matches foo.rs.bar
# ./affects-files.sh ^snap/ -- anything under the snap/ subdirectory
# ./affects-files.sh snap/ -- also matches foo/snap/
#
set -e
cd "$(dirname "$0")"/..
if ci/is-pr.sh; then
affectedFiles="$(buildkite-agent meta-data get affected_files)"
echo "Affected files in this PR: $affectedFiles"
IFS=':' read -ra files <<< "$affectedFiles"
for pattern in "$@"; do
if [[ ":$affectedFiles:" =~ $pattern ]]; then
exit 0
fi
for file in "${files[@]}"; do
if [[ $file =~ $pattern ]]; then
exit 0
fi
done
done
exit 1

View File

@ -1,12 +1,11 @@
#!/usr/bin/env bash
set -e
#
# Only run snap.sh for pull requests that modify files under /snap
#
set -e
cd "$(dirname "$0")"/..
ci/affects-files.sh :snap/ || {
ci/affects-files.sh ^snap/ || {
echo "Skipping snap build as no files under /snap were modified"
exit 0
}

View File

@ -1,6 +1,5 @@
#!/usr/bin/env bash
set -e
cd "$(dirname "$0")/.."
annotate() {
@ -10,10 +9,10 @@ annotate() {
}
ci/affects-files.sh \
.rs: \
ci/test-bench.sh: \
.rs$ \
ci/test-bench.sh \
|| {
annotate --style info --context coverage-info \
annotate --style info --context test-bench \
"Bench skipped as no .rs files were modified"
exit 0
}

View File

@ -1,6 +1,5 @@
#!/usr/bin/env bash
set -e
cd "$(dirname "$0")/.."
annotate() {
@ -10,11 +9,11 @@ annotate() {
}
ci/affects-files.sh \
.rs: \
ci/test-coverage.sh: \
scripts/coverage.sh: \
.rs$ \
ci/test-coverage.sh \
scripts/coverage.sh \
|| {
annotate --style info --context coverage-info \
annotate --style info --context test-coverage \
"Coverage skipped as no .rs files were modified"
exit 0
}