mirror of
https://github.com/azerothcore/mod-ale
synced 2025-11-29 15:38:17 +08:00
Add CI (#327)
This commit is contained in:
118
.github/workflows/build.yml
vendored
Normal file
118
.github/workflows/build.yml
vendored
Normal file
@@ -0,0 +1,118 @@
|
||||
name: build
|
||||
|
||||
on:
|
||||
push:
|
||||
pull_request:
|
||||
|
||||
jobs:
|
||||
TC-Eluna:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
eluna: [ON, OFF]
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
submodules: false
|
||||
repository: ElunaLuaEngine/ElunaTrinityWotlk
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
path: src/server/game/LuaEngine
|
||||
- name: Dependencies
|
||||
run: |
|
||||
sudo apt-get update && sudo apt-get install -yq libboost-all-dev
|
||||
- name: Setup
|
||||
env:
|
||||
ELUNA: ${{ matrix.eluna }}
|
||||
run: |
|
||||
mkdir bin
|
||||
cd bin
|
||||
cmake ../ -DELUNA=$ELUNA -DWITH_WARNINGS=1 -DWITH_COREDEBUG=0 -DUSE_COREPCH=1 -DUSE_SCRIPTPCH=1 -DTOOLS=1 -DSCRIPTS=dynamic -DSERVERS=1 -DNOJEM=0 -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_FLAGS="-Werror" -DCMAKE_CXX_FLAGS="-Werror" -DCMAKE_C_FLAGS_DEBUG="-DNDEBUG" -DCMAKE_CXX_FLAGS_DEBUG="-DNDEBUG" -DCMAKE_INSTALL_PREFIX=check_install -DBUILD_TESTING=1
|
||||
cd ..
|
||||
- name: Build
|
||||
run: |
|
||||
cd bin
|
||||
make -j 4 -k && make install
|
||||
- name: Unit tests
|
||||
run: |
|
||||
cd bin
|
||||
make test
|
||||
- name: Check executables
|
||||
run: |
|
||||
cd bin/check_install/bin
|
||||
./authserver --version
|
||||
./worldserver --version
|
||||
|
||||
AC-Eluna:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
compiler: [clang10]
|
||||
runs-on: ubuntu-20.04
|
||||
env:
|
||||
COMPILER: ${{ matrix.compiler }}
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
submodules: recursive
|
||||
repository: azerothcore/azerothcore-wotlk
|
||||
ref: 'master'
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
submodules: false
|
||||
repository: azerothcore/mod-eluna-lua-engine
|
||||
path: modules/mod-eluna-lua-engine
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
path: modules/mod-eluna-lua-engine/LuaEngine
|
||||
- name: Cache
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: /home/runner/.ccache
|
||||
key: ccache:${{ matrix.compiler }}:${{ github.ref }}:${{ github.sha }}
|
||||
restore-keys: |
|
||||
ccache:${{ matrix.compiler }}:${{ github.ref }}
|
||||
ccache:${{ matrix.compiler }}
|
||||
- name: Configure OS
|
||||
run: source ./apps/ci/ci-install.sh
|
||||
env:
|
||||
CONTINUOUS_INTEGRATION: true
|
||||
- name: Import db
|
||||
run: source ./apps/ci/ci-import-db.sh
|
||||
- name: Build
|
||||
run: source ./apps/ci/ci-compile.sh
|
||||
- name: Dry run
|
||||
run: source ./apps/ci/ci-worldserver-dry-run.sh
|
||||
- name: Check startup errors
|
||||
run: source ./apps/ci/ci-error-check.sh
|
||||
|
||||
mangos-Eluna:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
eluna: [ON, OFF]
|
||||
patch: [zero, one, two]
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
submodules: recursive
|
||||
repository: mangos${{ matrix.patch }}/server
|
||||
ref: master
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
path: src/modules/Eluna
|
||||
- name: Configure
|
||||
env:
|
||||
ELUNA: ${{ matrix.eluna }}
|
||||
run: |
|
||||
mkdir bin
|
||||
cd bin
|
||||
cmake .. -DELUNA=$ELUNA -DCMAKE_INSTALL_PREFIX=install -DSOAP=1 -DPLAYERBOTS=0 -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl/
|
||||
cd ..
|
||||
- name: Build
|
||||
run: |
|
||||
cd bin
|
||||
make -j4
|
||||
make install
|
||||
Reference in New Issue
Block a user