diff --git a/.travis.yml b/.travis.yml index a12b9d853..f5efebc55 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,6 +1,12 @@ language: cpp +env: + matrix: + -LUA_VERSION=5.2 +before_install: +- sudo apt-get install lua$LUA_VERSION script: -- python travis/lint.py - python travis/pr-check-base.py +- python travis/lint.py +- python travis/luac.py notifications: email: false diff --git a/travis/luac.py b/travis/luac.py new file mode 100644 index 000000000..80a28cc53 --- /dev/null +++ b/travis/luac.py @@ -0,0 +1,26 @@ +import os, sys, subprocess + +def main(): + root_path = os.path.abspath(sys.argv[1] if len(sys.argv) > 1 else '.') + if not os.path.exists(root_path): + print('Nonexistent path: %s' % root_path) + sys.exit(2) + err = False + for cur, dirnames, filenames in os.walk(root_path): + parts = cur.replace('\\', '/').split('/') + if '.git' in parts or 'depends' in parts: + continue + if '.git' in cur: + print(parts) + for filename in filenames: + if not filename.endswith('.lua'): + continue + full_path = os.path.join(cur, filename) + try: + subprocess.call(['luac' + os.environ.get('LUA_VERSION', ''), '-p', full_path]) + except subprocess.CalledProcessError: + err = True + sys.exit(int(err)) + +if __name__ == '__main__': + main()