Skip to content

Mechas no longer get their attack cooldowns taken up by clicking the floor. And phazons finally deal burn on the burn mode #48294

Mechas no longer get their attack cooldowns taken up by clicking the floor. And phazons finally deal burn on the burn mode

Mechas no longer get their attack cooldowns taken up by clicking the floor. And phazons finally deal burn on the burn mode #48294

Workflow file for this run

name: CI
on:
push:
branches:
- master
pull_request:
branches:
- master
merge_group:
jobs:
run_linters:
name: Run Linters
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: Setup Cache
uses: actions/cache@v4
with:
path: $HOME/SpacemanDMM
key: ${{ runner.os }}-spacemandmm
- name: Install Tools
run: |
bash tools/ci/install_build_deps.sh
bash tools/ci/install_dreamchecker.sh
- uses: actions/setup-python@v5
with:
python-version: '3.11'
cache: 'pip'
- uses: actions/setup-node@v4
with:
node-version: 20
cache: 'yarn'
cache-dependency-path: ./tgui/yarn.lock
- run: pip install -r tools/requirements.txt
- name: Run Linters
run: |
tools/ci/check_json.sh
tgui/bin/tgui --ci
python tools/ci/check_grep2.py
python tools/ci/check_line_endings.py
python tools/ci/check_file_names.py
python tools/ci/unticked_files.py ${GITHUB_WORKSPACE}
python tools/ci/illegal_dme_files.py ${GITHUB_WORKSPACE}
python tools/ci/define_sanity.py
python tools/ci/restrict_file_types.py
python tools/ci/check_map_sizes.py
python tools/ci/verify_sql_version.py
python tools/ci/no_duplicate_definitions.py
python -m tools.ci.check_icon_conflicts
python -m tools.ci.check_icon_dupenames
python -m tools.ci.check_legacy_attack_chain
python -m tools.maplint.source --github
- name: Setup .NET SDK
uses: actions/[email protected]
with:
dotnet-version: 9.x
- name: Run DreamChecker
shell: bash
run: ~/dreamchecker 2>&1 | bash tools/ci/annotate_dm.sh
odlint:
name: Lint with OpenDream
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: Setup OD
run: |
bash tools/ci/setup_od.sh
- name: Setup .NET SDK
uses: actions/[email protected]
with:
dotnet-version: 9.x
- name: Run OD
run: |
bash tools/ci/run_od.sh
compile_all_maps:
name: Compile All Maps
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: Setup Cache
uses: actions/cache@v4
with:
path: $HOME/BYOND
key: ${{ runner.os }}-byond
- name: Compile All Maps
run: |
tools/ci/install_byond.sh
source $HOME/BYOND/byond/bin/byondsetup
tools/ci/generate_maplist.sh
DreamMaker -DMULTIINSTANCE -DCIMAP paradise.dme
unit_tests_and_sql:
name: Unit Tests + SQL Validation
runs-on: ubuntu-22.04
strategy:
fail-fast: false # Let all map tests run to completion
matrix:
maptype:
[
'/datum/map/boxstation',
'/datum/map/deltastation',
'/datum/map/metastation',
'/datum/map/cerestation',
'/datum/map/emeraldstation',
]
byondtype: ['STABLE', 'BETA']
services:
mariadb:
image: mariadb:latest
env:
MYSQL_ROOT_PASSWORD: root
ports:
- 3306
options: --health-cmd "mariadb-admin ping" --health-interval 10s --health-timeout 5s --health-retries 10
steps:
- uses: actions/checkout@v4
- name: Setup Cache
uses: actions/cache@v4
with:
path: $HOME/BYOND
key: ${{ runner.os }}-byond
- name: Setup & Validate DB
run: |
sudo systemctl start mysql
python3 tools/ci/generate_sql_scripts.py
tools/ci/validate_sql.sh
- name: Install RUST_G Deps
run: |
sudo dpkg --add-architecture i386
sudo apt update || true
sudo apt install zlib1g-dev:i386
tools/ci/install_rustg.sh
- name: Compile & Run Unit Tests
run: |
tools/ci/install_byond.sh '${{ matrix.byondtype }}'
source $HOME/BYOND/byond/bin/byondsetup
DreamMaker -DMULTIINSTANCE -DCIBUILDING paradise.dme
echo '${{ matrix.maptype }}' > data/next_map.txt
tools/ci/run_server.sh
windows_dll_tests:
name: Windows RUSTG Validation
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.8.2' # Script was made for 3.8.2
architecture: 'x86' # This MUST be x86
- run: python tools/ci/validate_rustg_windows.py