mirror of
https://github.com/Citadel-Station-13/Citadel-Station-13-RP.git
synced 2025-12-09 17:43:53 +00:00
* Time to become our TGUI God. * Visually sprucing the copyrights. These shouldn't be ignored :) * babababa * https://github.com/tgstation/tgstation/pull/50422 * dooootdooot * Holy fuck Updates the tools folder Updates our build tooling Updates TGUI MASSIVELY I'm going to go scream in a hole now * ?? * Was it this dum thing? * orrrr * It's this isn't it * Did it manually * hubah * TGUI Changelog * oops * What if I use the original? * Lets try this again * Shit commenting out for now * asdasd * Fuck it use the old one and remember to replace later * Updates yarn.lock * Lets try something horrid * Nope it HATES THAT * fucc * The great eslinting * HOLY SHIT * Final? * ? * asd tgstation/tgstation/pull/59914 tgstation/tgstation/pull/66317 * Improved Asset handling. * Oops * Subsystem stuff * Recompiles the Changelong again. * Finally Fixed Communicators * Compiled Changelogs... AGAIN
136 lines
4.2 KiB
YAML
136 lines
4.2 KiB
YAML
name: CI Suite
|
|
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
pull_request:
|
|
branches:
|
|
- master
|
|
jobs:
|
|
run_linters:
|
|
if: "!contains(github.event.head_commit.message, '[ci skip]')"
|
|
name: Run Linters
|
|
runs-on: ubuntu-20.04
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: Setup cache
|
|
uses: actions/cache@v2
|
|
with:
|
|
path: $HOME/SpacemanDMM
|
|
key: ${{ runner.os }}-spacemandmm
|
|
- name: Restore Yarn cache
|
|
uses: actions/cache@v2
|
|
with:
|
|
path: $HOME/tgui/.yarn/cache
|
|
key: ${{ runner.os }}-yarn-${{ hashFiles('tgui/yarn.lock') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-build-
|
|
${{ runner.os }}-
|
|
- name: Install Tools
|
|
run: |
|
|
pip3 install setuptools
|
|
bash tools/ci/install_node.sh
|
|
bash tools/ci/install_spaceman_dmm.sh dreamchecker
|
|
tools/bootstrap/python -c ''
|
|
- name: Run Linters
|
|
run: |
|
|
bash tools/ci/check_filedirs.sh vorestation.dme
|
|
bash tools/ci/check_changelogs.sh
|
|
bash tools/ci/check_grep.sh
|
|
bash tools/ci/check_misc.sh
|
|
tools/build/build --ci lint tgui-test
|
|
tools/bootstrap/python -m dmi.test
|
|
tools/bootstrap/python -m mapmerge2.dmm_test
|
|
~/dreamchecker > ${GITHUB_WORKSPACE}/output-annotations.txt 2>&1
|
|
- name: Annotate Lints
|
|
uses: yogstation13/DreamAnnotate@v1
|
|
if: always()
|
|
with:
|
|
outputFile: output-annotations.txt
|
|
|
|
compile_all_maps:
|
|
if: "!contains(github.event.head_commit.message, '[ci skip]')"
|
|
name: Compile Maps
|
|
runs-on: ubuntu-20.04
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: Setup cache
|
|
uses: actions/cache@v2
|
|
with:
|
|
path: $HOME/BYOND
|
|
key: ${{ runner.os }}-byond
|
|
- name: Compile All Maps
|
|
run: |
|
|
bash tools/ci/install_byond.sh
|
|
source $HOME/BYOND/byond/bin/byondsetup
|
|
tools/build/build --ci dm -DCIBUILDING -DCITESTING -DALL_MAPS
|
|
|
|
run_all_tests:
|
|
if: "!contains(github.event.head_commit.message, '[ci skip]')"
|
|
name: Integration 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: Restore BYOND cache
|
|
uses: actions/cache@v2
|
|
with:
|
|
path: $HOME/BYOND
|
|
key: ${{ runner.os }}-byond
|
|
- name: Setup database
|
|
run: |
|
|
sudo systemctl start mysql
|
|
mysql -u root -proot -e 'CREATE DATABASE tg_ci;'
|
|
mysql -u root -proot tg_ci < SQL/tgstation_schema.sql
|
|
# mysql -u root -proot -e 'CREATE DATABASE tg_ci_prefixed;'
|
|
# mysql -u root -proot tg_ci_prefixed < SQL/tgstation_schema_prefixed.sql
|
|
- name: Install rust-g
|
|
run: |
|
|
sudo dpkg --add-architecture i386
|
|
sudo apt update || true
|
|
sudo apt install -o APT::Immediate-Configure=false libssl1.1:i386
|
|
bash tools/ci/install_rust_g.sh
|
|
- name: Compile and run tests
|
|
run: |
|
|
bash tools/ci/install_byond.sh
|
|
source $HOME/BYOND/byond/bin/byondsetup
|
|
tools/build/build --ci dm -DCIBUILDING
|
|
bash tools/ci/run_server.sh
|
|
env:
|
|
CBT_BUILD_MODE: TEST_RUN
|
|
|
|
test_windows:
|
|
if: "!contains(github.event.head_commit.message, '[ci skip]')"
|
|
name: Windows Build
|
|
runs-on: windows-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: Restore Yarn cache
|
|
uses: actions/cache@v2
|
|
with:
|
|
path: $HOME/tgui/.yarn/cache
|
|
key: ${{ runner.os }}-yarn-${{ hashFiles('tgui/yarn.lock') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-build-
|
|
${{ runner.os }}-
|
|
- name: Compile
|
|
run: pwsh tools/ci/build.ps1
|
|
env:
|
|
DM_EXE: "C:\\byond\\bin\\dm.exe"
|
|
- name: Create artifact
|
|
run: |
|
|
md deploy
|
|
bash tools/deploy.sh ./deploy
|
|
- name: Deploy artifact
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: deploy
|
|
path: deploy
|