diff options
Diffstat (limited to '.run_formal_checks.sh')
| -rwxr-xr-x | .run_formal_checks.sh | 26 |
1 files changed, 14 insertions, 12 deletions
diff --git a/.run_formal_checks.sh b/.run_formal_checks.sh index f5ffec25..0a28a1d1 100755 --- a/.run_formal_checks.sh +++ b/.run_formal_checks.sh @@ -11,23 +11,25 @@ fi DUT=$1 -# Run formal check only for PRs -if [ $TRAVIS_PULL_REQUEST = "false" ]; then - echo "Not a pull request, no formal check" - exit 0 -else - # $TRAVIS_BRANCH is branch targeted by PR - # Travis does a shallow clone, checkout PR target so that we have it - # THen return to previous branch so HEAD points to the commit we're testing - git remote set-branches origin $TRAVIS_BRANCH && git fetch - git checkout $TRAVIS_BRANCH +# See https://docs.github.com/en/actions/reference/environment-variables +# for info about these variables + +# Run formal check only for PRs, GITHUB_BASE_REF is only set for PRs +if [ ! -z "$GITHUB_BASE_REF" ]; then + # Github Actions does a shallow clone, checkout PR target so that we have it + # Then return to previous branch so HEAD points to the commit we're testing + git remote set-branches origin $GITHUB_BASE_REF && git fetch + git checkout $GITHUB_BASE_REF git checkout - # Skip if '[skip formal checks]' shows up in any of the commit messages in the PR - if git log --format=%B --no-merges $TRAVIS_BRANCH..HEAD | grep '\[skip formal checks\]'; then + if git log --format=%B --no-merges $GITHUB_BASE_REF..HEAD | grep '\[skip formal checks\]'; then echo "Commit message says to skip formal checks" exit 0 else cp regress/$DUT.fir $DUT.fir - ./scripts/formal_equiv.sh HEAD $TRAVIS_BRANCH $DUT + ./scripts/formal_equiv.sh HEAD $GITHUB_BASE_REF $DUT fi +else + echo "Not a pull request, no formal check" + exit 0 fi |
