container.sh 828 B

1234567891011121314151617181920212223242526
  1. #!/bin/sh
  2. set -e
  3. python=
  4. for c in pypy3 pypy python3 python; do
  5. if [ -x "/usr/local/bin/$c" ]; then
  6. python="/usr/local/bin/$c"
  7. break
  8. fi
  9. done
  10. if [ -z "$python" ]; then
  11. echo >&2 'unable to run Hy test -- seems this image does not contain Python?'
  12. exit 1
  13. fi
  14. # Hy is complicated, and uses Python's internal AST representation directly, and thus Hy releases usually lag behind a little on major Python releases (and we don't want that to gum up our tests)
  15. # see https://github.com/hylang/hy/issues/1111 for example breakage
  16. if ! "$python" -c 'import sys; exit((sys.version_info[0] == 3 and sys.version_info[1] >= 7) or sys.version_info[0] > 3)'; then
  17. echo >&2 'skipping Hy test -- not allowed on Python 3.7+ (yet!)'
  18. cat expected-std-out.txt # cheaters gunna cheat
  19. exit
  20. fi
  21. pip install -q 'hy==0.13.0'
  22. hy ./container.hy