forked from SunstriderEmu/sunstrider-legacy
-
Notifications
You must be signed in to change notification settings - Fork 2
/
.travis.yml
84 lines (77 loc) · 2.64 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
sudo: false
dist: xenial
language: cpp
compiler:
- clang
git:
depth: 1
addons:
mariadb: '10.3'
apt:
update: true
sources:
- ubuntu-toolchain-r-test
- sourceline: 'ppa:rexut/factory'
packages:
- libssl-dev
- libmariadb-client-lgpl-dev
- libreadline6-dev
- zlib1g-dev
- libbz2-dev
- libboost1.62-dev
- libboost-filesystem1.62-dev
- libboost-iostreams1.62-dev
- libboost-program-options1.62-dev
- libboost-regex1.62-dev
- libboost-system1.62-dev
- libboost-thread1.62-dev
# For data archive
- p7zip
# For post run debug
- gdb
before_install:
- apt-cache policy libboost-dev
- git config user.email "[email protected]" && git config user.name "Travis CI"
- git tag -a -m "Travis build" init
# To get core dump infos
- ulimit -c
- ulimit -a -S
- ulimit -a -H
- cat /proc/sys/kernel/core_pattern
# More recent cmake
- sudo apt-get remove cmake
- sudo mkdir /opt/cmake
- wget https://cmake.org/files/v3.11/cmake-3.11.4-Linux-x86_64.sh
- sudo sh cmake-3.11.4-Linux-x86_64.sh --prefix=/opt/cmake --skip-license
install:
- mysql -uroot -e 'create database test_mysql'
- mkdir bin logs data
- cd bin
- /opt/cmake/bin/cmake ../ -DPLAYERBOT=1 -DTOOLS=1 -DSCRIPTS=static -DTESTS=1 -DCMAKE_BUILD_TYPE=Release -DDO_DEBUG=1 -DCMAKE_INSTALL_PREFIX=check_install
- cd ..
script:
- $CXX --version
- mysql -uroot < sql/create/create_mysql.sql
- mysql -utrinity -ptrinity auth < sql/base/auth_database.sql
- mysql -utrinity -ptrinity characters < sql/base/characters_database.sql
- mysql -utrinity -ptrinity logs < sql/base/logs_database.sql
- cd bin
- make -j 10 -k && make install && make clean
- cd check_install
- mkdir data && cd data
- wget https://blob.allumeciga.re/2019_01_22_data.7z
- 7zr x 2019_01_22_data.7z -y > /dev/null
- rm 2019_01_22_data.7z
- cd ..
- ls
- cd bin
- ./authserver --version
- ./worldserver --version
- wget https://github.com/ValorenWoW/sunstrider-core/releases/download/2019_01_02/world_2019_01_02.sql.zip
- unzip world_2019_01_02.sql.zip
- rm world_2019_01_02.sql.zip
- sed -e 's!^DataDir\s*=.*!DataDir = "../data/"!g;' -e 's!^LogsDir\s*=.*!LogsDir = "../logs/"!g;' -e 's!^Testing.MaxParallel\s*=.*!Testing.MaxParallel = 1000!g;' -e 's!^Logger.scripts.ai\s*=.*!Logger.scripts.ai=6,Console Server!g;' < "../etc/worldserver.conf.dist" > "../etc/worldserver.conf"
- ulimit -c unlimited -S
- ./worldserver --tests
- ls -l
- for i in $(find ./ -maxdepth 1 -name 'core*' -print); do gdb worldserver core* -ex "thread apply all bt" -ex "set pagination 0" -batch; done;