pr-sanity-checks.sh 902 B

12345678910111213141516171819202122232425262728293031
  1. #!/usr/bin/env bash
  2. set -euo pipefail
  3. if ! type "docker" > /dev/null; then
  4. echo "docker is not installed"
  5. exit 1
  6. fi
  7. if ! type "yq" > /dev/null; then
  8. echo "yq is not installed"
  9. exit 1
  10. fi
  11. cd -P -- "$(dirname -- "${BASH_SOURCE[0]}")/.."
  12. # shellcheck disable=SC1091
  13. source ./env.sh
  14. commands=$(yq ".jobs.sanity-checks.steps[].run" .github/workflows/_pr_entrypoint.yaml | grep -v null)
  15. BEFORE_REF=${BEFORE_REF:-$(git rev-parse master)}
  16. AFTER_REF=${AFTER_REF:-$(git rev-parse HEAD)}
  17. docker run --rm -it -v "$(pwd):/emqx" -w /emqx \
  18. -e GITHUB_WORKSPACE=/emqx \
  19. -e BEFORE_REF="$BEFORE_REF" \
  20. -e AFTER_REF="$AFTER_REF" \
  21. -e GITHUB_BASE_REF="$BEFORE_REF" \
  22. -e MIX_ENV=emqx-enterprise \
  23. -e PROFILE=emqx-enterprise \
  24. -e ACTIONLINT_VSN=1.6.25 \
  25. "${EMQX_BUILDER}" /bin/bash -c "git config --global --add safe.directory /emqx; ${commands}"