Merge branch 'develop' of https://github.com/DFHack/dfhack into Units
commit
b0d184e2f9
@ -0,0 +1,106 @@
|
||||
name: Build
|
||||
|
||||
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/.df-env"
|
||||
echo export DF_FOLDER="$HOME/DF/$DF_VERSION/df_linux" >> "$HOME/.df-env"
|
||||
- name: Download DF
|
||||
run: |
|
||||
source "$HOME/.df-env"
|
||||
sh travis/download-df.sh
|
||||
- name: Build docs
|
||||
run: |
|
||||
sphinx-build -qW -j3 . docs/html
|
||||
- name: Upload docs
|
||||
uses: actions/upload-artifact@v1
|
||||
with:
|
||||
name: docs
|
||||
path: docs/html
|
||||
- name: Build DFHack
|
||||
run: |
|
||||
source "$HOME/.df-env"
|
||||
cmake \
|
||||
-S . \
|
||||
-B build-ci \
|
||||
-G Ninja \
|
||||
-DDFHACK_BUILD_ARCH=64 \
|
||||
-DBUILD_DOCS:BOOL=ON \
|
||||
-DBUILD_TESTS:BOOL=ON \
|
||||
-DCMAKE_INSTALL_PREFIX="$DF_FOLDER"
|
||||
ninja -C build-ci install
|
||||
- name: Run tests
|
||||
run: |
|
||||
source "$HOME/.df-env"
|
||||
export TERM=dumb
|
||||
mv "$DF_FOLDER"/dfhack.init-example "$DF_FOLDER"/dfhack.init
|
||||
script -qe -c "python travis/run-tests.py --headless --keep-status \"$DF_FOLDER\""
|
||||
python travis/check-rpc.py "$DF_FOLDER/dfhack-rpc.txt"
|
||||
mkdir -p artifacts
|
||||
cp "$DF_FOLDER/test_status.json" "$DF_FOLDER"/*.log artifacts
|
||||
- name: Upload test artifacts
|
||||
uses: actions/upload-artifact@v1
|
||||
if: success() || failure()
|
||||
with:
|
||||
name: test-artifacts
|
||||
path: artifacts
|
||||
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"
|
||||
check-pr:
|
||||
runs-on: ubuntu-latest
|
||||
if: github.event_name == 'pull_request'
|
||||
steps:
|
||||
- name: Check that PR is based on develop branch
|
||||
env:
|
||||
BASE_BRANCH: ${{ github.base_ref }}
|
||||
run: |
|
||||
echo "PR base branch: $BASE_BRANCH"
|
||||
test "$BASE_BRANCH" = develop
|
@ -1,64 +0,0 @@
|
||||
sudo: false
|
||||
language: cpp
|
||||
cache:
|
||||
pip: true
|
||||
directories:
|
||||
- $HOME/DF-travis
|
||||
- $HOME/lua53
|
||||
addons:
|
||||
apt:
|
||||
packages: &default_packages
|
||||
- libsdl-image1.2-dev
|
||||
- libsdl-ttf2.0-dev
|
||||
- libsdl1.2-dev
|
||||
- libxml-libxml-perl
|
||||
- libxml-libxslt-perl
|
||||
- ninja-build
|
||||
- zlib1g-dev
|
||||
matrix:
|
||||
include:
|
||||
- env: GCC_VERSION=4.8
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
packages:
|
||||
- *default_packages
|
||||
- gcc-4.8
|
||||
- g++-4.8
|
||||
before_install:
|
||||
- export DF_VERSION=$(sh travis/get-df-version.sh)
|
||||
- export DF_FOLDER="$HOME/DF-travis/$DF_VERSION/df_linux"
|
||||
- pip install --user "sphinx==1.4" "requests[security]"
|
||||
- sh travis/build-lua.sh
|
||||
- sh travis/download-df.sh
|
||||
script:
|
||||
- export PATH="$PATH:$HOME/lua53/bin"
|
||||
- git tag tmp-travis-build
|
||||
- sh travis/git-info.sh
|
||||
- sphinx-build -qW -j3 . docs/html
|
||||
- python travis/pr-check-base.py
|
||||
- python travis/lint.py
|
||||
- python travis/authors-rst.py
|
||||
- python travis/script-docs.py
|
||||
- python travis/script-syntax.py --ext=lua --cmd="luac5.3 -p"
|
||||
- python travis/script-syntax.py --ext=rb --cmd="ruby -c"
|
||||
- mkdir build-travis
|
||||
- cd build-travis
|
||||
- cmake .. -G Ninja -DCMAKE_C_COMPILER=gcc-$GCC_VERSION -DCMAKE_CXX_COMPILER=g++-$GCC_VERSION -DDFHACK_BUILD_ARCH=64 -DBUILD_DOCS:BOOL=ON -DBUILD_TESTS:BOOL=ON -DCMAKE_INSTALL_PREFIX="$DF_FOLDER"
|
||||
- ninja -j3 install
|
||||
- mv "$DF_FOLDER"/dfhack.init-example "$DF_FOLDER"/dfhack.init
|
||||
- cd ..
|
||||
- python travis/run-tests.py --headless --keep-status "$DF_FOLDER"
|
||||
- python travis/check-rpc.py "$DF_FOLDER/dfhack-rpc.txt"
|
||||
- cat "$DF_FOLDER/test_status.json"
|
||||
before_cache:
|
||||
- cat "$DF_FOLDER/stderr.log"
|
||||
- rm -rf "$DF_FOLDER"
|
||||
notifications:
|
||||
email: false
|
||||
irc:
|
||||
channels:
|
||||
- "chat.freenode.net#dfhack"
|
||||
on_success: change
|
||||
on_failure: always
|
@ -1 +1 @@
|
||||
Subproject commit b585e182c404a14130d42bf87a60f94aebbfd1fd
|
||||
Subproject commit f185d0b22acb1daf36b3a017f7a30b48994ee42c
|
@ -1 +1 @@
|
||||
Subproject commit 8618cd0b0a17935fe07f329b249726cda61f5bdf
|
||||
Subproject commit b3ce8fa650f86c7a1dbd5329d72c3d73dd76d05d
|
@ -1,54 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
LUA_ROOT="$HOME/lua53"
|
||||
LUA_URL="http://www.lua.org/ftp/lua-5.3.3.tar.gz"
|
||||
LUA_TAR=$(basename "$LUA_URL")
|
||||
LUA_DIR="$LUA_ROOT/${LUA_TAR%.tar.*}"
|
||||
LUA_SHA1="a0341bc3d1415b814cc738b2ec01ae56045d64ef"
|
||||
|
||||
echo LUA_ROOT $LUA_ROOT
|
||||
echo LUA_TAR $LUA_TAR
|
||||
echo LUA_DIR $LUA_DIR
|
||||
|
||||
sha1() {
|
||||
python -c 'import hashlib, sys; print(hashlib.sha1(open(sys.argv[1],"rb").read()).hexdigest())' "$1"
|
||||
}
|
||||
|
||||
download() {
|
||||
echo "Downloading $LUA_URL"
|
||||
wget -O "$LUA_ROOT/$LUA_TAR" "$LUA_URL"
|
||||
tar xvf "$LUA_ROOT/$LUA_TAR"
|
||||
}
|
||||
|
||||
build() {
|
||||
cd "$LUA_DIR/src"
|
||||
make generic
|
||||
}
|
||||
|
||||
main() {
|
||||
mkdir -p "$LUA_ROOT"
|
||||
cd "$LUA_ROOT"
|
||||
mkdir -p bin
|
||||
|
||||
if [ "$(sha1 "$LUA_ROOT/$LUA_TAR" 2>/dev/null)" != "$LUA_SHA1" ]; then
|
||||
download
|
||||
build
|
||||
else
|
||||
echo "Already downloaded"
|
||||
|
||||
if [ -x "$LUA_DIR/src/luac" ]; then
|
||||
echo "Already built"
|
||||
else
|
||||
build
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "Linking"
|
||||
ln -sf "$LUA_DIR/src/lua" "$LUA_ROOT/bin/lua5.3"
|
||||
ln -sf "$LUA_DIR/src/luac" "$LUA_ROOT/bin/luac5.3"
|
||||
echo "Done"
|
||||
}
|
||||
|
||||
main
|
@ -1,2 +0,0 @@
|
||||
#!/bin/sh
|
||||
git log --pretty="commit %h (parents: %p): %s" -1
|
@ -1,18 +0,0 @@
|
||||
import os, sys
|
||||
repo = os.environ.get('TRAVIS_REPO_SLUG', 'dfhack/dfhack').lower()
|
||||
branch = os.environ.get('TRAVIS_BRANCH', 'master')
|
||||
try:
|
||||
pr_id = int(os.environ.get('TRAVIS_PULL_REQUEST', 'false'))
|
||||
except ValueError:
|
||||
print('Not a pull request')
|
||||
sys.exit(0)
|
||||
print('Pull request %s#%i' % (repo, pr_id))
|
||||
if repo != 'dfhack/dfhack':
|
||||
print('Not in dfhack/dfhack')
|
||||
sys.exit(0)
|
||||
if branch != 'develop':
|
||||
print('Not based on develop branch')
|
||||
sys.exit(1)
|
||||
else:
|
||||
print('Ok')
|
||||
sys.exit(0)
|
Loading…
Reference in New Issue