Von Neumann Class - a mid-pop solgov ship #3669
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Run tests | |
on: | |
workflow_dispatch: | |
push: | |
paths-ignore: | |
- "html/changelogs/**" | |
- "html/changelog.html" | |
branches: | |
- master | |
pull_request: | |
branches: | |
- master | |
jobs: | |
run_linters: | |
runs-on: ubuntu-20.04 | |
if: github.repository == 'BeeStation/NSV13' | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Python setup | |
uses: actions/setup-python@v1 | |
with: | |
python-version: "3.11" | |
- name: Setup cache | |
id: cache-spacemandmm | |
uses: actions/cache@v2 | |
with: | |
path: ~/dreamchecker | |
key: ${{ runner.os }}-spacemandmm-cache-${{ hashFiles('dependencies.sh') }} | |
- name: Install SpacemanDMM | |
if: steps.cache-spacemandmm.outputs.cache-hit != 'true' | |
run: bash tools/ci/install_spaceman_dmm.sh dreamchecker | |
- name: Install Tools | |
run: | | |
pip install setuptools | |
bash tools/ci/install_node.sh | |
bash tools/ci/install_auxmos.sh | |
pip install -r tools/requirements.txt | |
- name: Run Linters | |
run: | | |
bash tools/ci/check_filedirs.sh nsv13.dme | |
bash tools/ci/check_changelogs.sh | |
find . -name "*.php" -print0 | xargs -0 -n1 php -l | |
find . -name "*.json" -not -path "*/node_modules/*" -print0 | xargs -0 python ./tools/json_verifier.py | |
bash tools/ci/check_grep.sh | |
tools/build/build --ci lint tgui-test | |
tools/bootstrap/python -m dmi.test | |
tools/bootstrap/python -m mapmerge2.dmm_test | |
~/dreamchecker | |
compile_all_maps: | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Setup cache | |
id: cache-byond | |
uses: actions/cache@v2 | |
with: | |
path: ~/BYOND | |
key: ${{ runner.os }}-byond-cache-${{ hashFiles('Dockerfile') }} | |
- name: Install BYOND | |
if: steps.cache-byond.outputs.cache-hit != 'true' | |
run: bash tools/ci/install_byond.sh | |
- name: Compile All Maps | |
run: | | |
source $HOME/BYOND/byond/bin/byondsetup | |
python3 tools/ci/template_dm_generator.py | |
tools/build/build --ci dm -DCIBUILDING -DCITESTING -DALL_MAPS | |
run_all_tests: | |
runs-on: ubuntu-20.04 | |
services: | |
mysql: | |
image: mysql:latest | |
env: | |
MYSQL_ROOT_PASSWORD: root | |
ports: | |
- 3306 | |
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Setup cache | |
id: cache-byond | |
uses: actions/cache@v2 | |
with: | |
path: ~/BYOND | |
key: ${{ runner.os }}-byond-cache-${{ hashFiles('Dockerfile') }} | |
- name: Install BYOND | |
if: steps.cache-byond.outputs.cache-hit != 'true' | |
run: bash tools/ci/install_byond.sh | |
- name: Setup database | |
run: | | |
sudo systemctl start mysql | |
mysql -u root -proot -e 'CREATE DATABASE bee_ci;' | |
mysql -u root -proot bee_ci < SQL/beestation_schema.sql | |
- name: Install rust-g | |
run: | | |
sudo dpkg --add-architecture i386 | |
sudo apt update || true | |
sudo apt install libssl1.1:i386 | |
bash tools/ci/install_rust_g.sh | |
- name: Install auxmos | |
run: | | |
bash tools/ci/install_auxmos.sh | |
- name: Compile and run tests | |
run: | | |
source $HOME/BYOND/byond/bin/byondsetup | |
tools/build/build --ci build -DCIBUILDING | |
bash tools/ci/run_server.sh | |
test_windows: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Compile | |
run: pwsh tools/ci/build.ps1 | |
env: | |
DM_EXE: "C:\\byond\\bin\\dm.exe" | |