mirror of
https://github.com/BeamMP/BeamMP-Server.git
synced 2025-07-01 15:26:59 +00:00
79 lines
2.3 KiB
YAML
79 lines
2.3 KiB
YAML
name: CMake Linux Build
|
|
|
|
on: [push]
|
|
|
|
env:
|
|
BUILD_TYPE: Release
|
|
|
|
jobs:
|
|
linux-build:
|
|
runs-on: ubuntu-22.04
|
|
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
with:
|
|
submodules: "recursive"
|
|
|
|
- name: Install Dependencies
|
|
env:
|
|
beammp_sentry_url: ${{ secrets.BEAMMP_SECRET_SENTRY_URL }}
|
|
run: |
|
|
echo ${#beammp_sentry_url}
|
|
sudo apt-get update
|
|
sudo apt-get install -y libz-dev rapidjson-dev liblua5.3 libssl-dev libwebsocketpp-dev libcurl4-openssl-dev cmake g++-10 libboost1.74-all-dev
|
|
|
|
- name: Create Build Environment
|
|
run: cmake -E make_directory ${{github.workspace}}/build-linux
|
|
|
|
- name: Configure CMake
|
|
shell: bash
|
|
working-directory: ${{github.workspace}}/build-linux
|
|
env:
|
|
beammp_sentry_url: ${{ secrets.BEAMMP_SECRET_SENTRY_URL }}
|
|
run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DCMAKE_CXX_COMPILER=g++-10 -DBEAMMP_SECRET_SENTRY_URL="$beammp_sentry_url"
|
|
|
|
- name: Build Server
|
|
working-directory: ${{github.workspace}}/build-linux
|
|
shell: bash
|
|
run: cmake --build . --config $BUILD_TYPE -t BeamMP-Server --parallel
|
|
|
|
- name: Build Tests
|
|
working-directory: ${{github.workspace}}/build-linux
|
|
shell: bash
|
|
run: cmake --build . --config $BUILD_TYPE -t BeamMP-Server-tests --parallel
|
|
|
|
- name: Archive server artifact
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: BeamMP-Server-linux
|
|
path: ${{github.workspace}}/build-linux/BeamMP-Server
|
|
|
|
- name: Archive test artifact
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: BeamMP-Server-linux-tests
|
|
path: ${{github.workspace}}/build-linux/BeamMP-Server-tests
|
|
|
|
run-tests:
|
|
needs: linux-build
|
|
runs-on: ubuntu-22.04
|
|
|
|
steps:
|
|
- uses: actions/download-artifact@master
|
|
with:
|
|
name: BeamMP-Server-linux-tests
|
|
path: ${{github.workspace}}
|
|
|
|
- name: Install Runtime Dependencies
|
|
shell: bash
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get install -y liblua5.3-0 libssl3 curl
|
|
|
|
- name: Test
|
|
working-directory: ${{github.workspace}}
|
|
shell: bash
|
|
run: |
|
|
chmod +x ./BeamMP-Server-tests
|
|
./BeamMP-Server-tests
|