name: Build and test on: [push, pull_request] jobs: build: runs-on: ubuntu-18.04 steps: - name: Install dependencies run: | sudo apt-get update sudo apt-get install \ libsdl-image1.2-dev \ libsdl-ttf2.0-dev \ libsdl1.2-dev \ libxml-libxml-perl \ libxml-libxslt-perl \ lua5.3 \ ninja-build \ zlib1g-dev sudo pip3 install --system sphinx - name: Clone DFHack uses: actions/checkout@v1 with: submodules: true - name: Set up environment run: | echo 'export DF_VERSION=$(sh travis/get-df-version.sh)' >> "$HOME/.dfhackrc" echo 'export DF_FOLDER="$HOME/DF/$DF_VERSION/df_linux"' >> "$HOME/.dfhackrc" - name: Download DF run: | source "$HOME/.dfhackrc" sh travis/download-df.sh - name: Git information run: | sh travis/git-info.sh - name: Build docs run: | sphinx-build -qW -j3 . docs/html - name: Upload docs uses: actions/upload-artifact@master with: name: docs path: docs/html lint: runs-on: ubuntu-18.04 steps: - name: Install dependencies run: | sudo apt-get update sudo apt-get install \ lua5.3 \ ruby - name: Clone DFHack uses: actions/checkout@v1 with: submodules: true - name: Check whitespace run: | python travis/lint.py - name: Check Authors.rst run: | python travis/authors-rst.py - name: Check for missing documentation run: | python travis/script-docs.py - name: Check Lua syntax run: | python travis/script-syntax.py --ext=lua --cmd="luac5.3 -p" - name: Check Ruby syntax run: | python travis/script-syntax.py --ext=rb --cmd="ruby -c"