mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-24 05:30:05 +01:00
[MIRROR] Completely replace Travis and AppVeyor with GitHub Actions (#1519)
* Completely replace Travis and AppVeyor with GitHub Actions * Delete .travis.yml Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com> Co-authored-by: Gandalf <jzo123@hotmail.com>
This commit is contained in:
co-authored by
Jared-Fogle
Gandalf
parent
990ba200b1
commit
d89c12eab5
@@ -1,6 +1,5 @@
|
||||
.dockerignore
|
||||
.editorconfig
|
||||
.travis.yml
|
||||
GPLv3.txt
|
||||
LICENSE
|
||||
README.md
|
||||
@@ -26,5 +25,4 @@ tgstation.dyn.rsc
|
||||
libmariadb.dll
|
||||
rust_g.dll
|
||||
BSQL.dll
|
||||
appveyor.yml
|
||||
Dockerfile
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
name: Generate documentation
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
jobs:
|
||||
generate_documentation:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Setup cache
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: $HOME/SpacemanDMM
|
||||
key: ${{ runner.os }}-spacemandmm
|
||||
- name: Install SpacemanDMM
|
||||
run: bash tools/ci/install_spaceman_dmm.sh dmdoc
|
||||
- name: Generate documentation
|
||||
run: |
|
||||
~/dmdoc
|
||||
touch dmdoc/.nojekyll
|
||||
echo codedocs.tgstation13.org > dmdoc/CNAME
|
||||
- name: Deploy
|
||||
uses: JamesIves/github-pages-deploy-action@3.7.1
|
||||
with:
|
||||
BRANCH: gh-pages
|
||||
CLEAN: true
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
SINGLE_COMMIT: true
|
||||
FOLDER: dmdoc
|
||||
@@ -0,0 +1,100 @@
|
||||
name: Run tests
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
pull_request:
|
||||
branches:
|
||||
- master
|
||||
jobs:
|
||||
run_linters:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Setup cache
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: $HOME/SpacemanDMM
|
||||
key: ${{ runner.os }}-spacemandmm
|
||||
- name: Install Tools
|
||||
run: |
|
||||
pip3 install setuptools
|
||||
bash tools/ci/install_build_tools.sh
|
||||
bash tools/ci/install_spaceman_dmm.sh dreamchecker
|
||||
pip3 install -r tools/mapmerge2/requirements.txt
|
||||
- name: Run Linters
|
||||
run: |
|
||||
bash tools/ci/check_filedirs.sh tgstation.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 python3 ./tools/json_verifier.py
|
||||
bash tools/ci/build_tgui.sh
|
||||
bash tools/ci/check_grep.sh
|
||||
python3 tools/mapmerge2/dmi.py --test
|
||||
~/dreamchecker
|
||||
compile_all_maps:
|
||||
runs-on: ubuntu-latest
|
||||
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
|
||||
python3 tools/ci/template_dm_generator.py
|
||||
bash tools/ci/dm.sh -DCIBUILDING -DCITESTING -DALL_MAPS tgstation.dme
|
||||
run_all_tests:
|
||||
runs-on: ubuntu-latest
|
||||
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
|
||||
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
|
||||
sudo apt install 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
|
||||
bash tools/ci/dm.sh -DCIBUILDING tgstation.dme
|
||||
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
|
||||
- name: Create artifact
|
||||
run: |
|
||||
md deploy
|
||||
bash tools/deploy.sh ./deploy
|
||||
- name: Deploy artifact
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: deploy
|
||||
path: deploy
|
||||
-103
@@ -1,103 +0,0 @@
|
||||
language: generic
|
||||
os: linux
|
||||
dist: bionic
|
||||
|
||||
branches:
|
||||
except:
|
||||
- ___TGS3TempBranch
|
||||
- ___TGSTempBranch
|
||||
|
||||
jobs:
|
||||
include:
|
||||
- name: "Run Linters"
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- python3
|
||||
- python3-pip
|
||||
- python3-setuptools
|
||||
- pcregrep
|
||||
- rustc
|
||||
- cargo
|
||||
cache:
|
||||
directories:
|
||||
- $HOME/SpacemanDMM
|
||||
install:
|
||||
- tools/travis/install_build_tools.sh
|
||||
- tools/travis/install_spaceman_dmm.sh dreamchecker
|
||||
- python3 -m pip install -r tools/mapmerge2/requirements.txt
|
||||
script:
|
||||
- tools/travis/check_filedirs.sh tgstation.dme
|
||||
- tools/travis/check_changelogs.sh
|
||||
- find . -name "*.php" -print0 | xargs -0 -n1 php -l
|
||||
- find . -name "*.json" -not -path "*/node_modules/*" -print0 | xargs -0 python3 ./tools/json_verifier.py
|
||||
- tools/travis/build_tgui.sh
|
||||
- tools/travis/check_grep.sh
|
||||
- python3 tools/mapmerge2/dmi.py --test
|
||||
- ~/dreamchecker
|
||||
|
||||
- name: "Compile All Maps"
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- libstdc++6:i386
|
||||
cache:
|
||||
directories:
|
||||
- $HOME/BYOND
|
||||
install:
|
||||
- tools/travis/install_byond.sh
|
||||
- source $HOME/BYOND/byond/bin/byondsetup
|
||||
before_script:
|
||||
- tools/travis/template_dm_generator.py
|
||||
script:
|
||||
- tools/travis/dm.sh -DTRAVISBUILDING -DTRAVISTESTING -DALL_MAPS tgstation.dme
|
||||
|
||||
- name: "Compile and Run Tests"
|
||||
addons:
|
||||
mariadb: '10.2'
|
||||
apt:
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
packages:
|
||||
- libstdc++6:i386
|
||||
- gcc-multilib
|
||||
- g++-7
|
||||
- g++-7-multilib
|
||||
- libssl1.1:i386
|
||||
- zlib1g:i386
|
||||
cache:
|
||||
directories:
|
||||
- $HOME/BYOND
|
||||
install:
|
||||
- tools/travis/install_byond.sh
|
||||
- source $HOME/BYOND/byond/bin/byondsetup
|
||||
- tools/travis/install_rust_g.sh
|
||||
before_script:
|
||||
- mysql -u root -e 'CREATE DATABASE tg_travis;'
|
||||
- mysql -u root tg_travis < SQL/tgstation_schema.sql
|
||||
- mysql -u root -e 'CREATE DATABASE tg_travis_prefixed;'
|
||||
- mysql -u root tg_travis_prefixed < SQL/tgstation_schema_prefixed.sql
|
||||
script:
|
||||
- tools/travis/dm.sh -DTRAVISBUILDING tgstation.dme || travis_terminate 1
|
||||
- tools/travis/run_server.sh
|
||||
|
||||
- name: "Generate Documentation"
|
||||
# Only run for non-PR commits to the real master branch.
|
||||
if: branch = master AND head_branch IS blank
|
||||
cache:
|
||||
directories:
|
||||
- $HOME/SpacemanDMM
|
||||
install:
|
||||
- tools/travis/install_spaceman_dmm.sh dmdoc
|
||||
before_script:
|
||||
# Travis checks out a hash, try to get back on a branch.
|
||||
- git checkout $TRAVIS_BRANCH || true
|
||||
script:
|
||||
- ~/dmdoc
|
||||
- touch dmdoc/.nojekyll
|
||||
deploy:
|
||||
provider: pages
|
||||
skip_cleanup: true
|
||||
local_dir: dmdoc
|
||||
token: $DMDOC_GITHUB_TOKEN
|
||||
fqdn: skyrat-ss13.github.io
|
||||
+1
-1
@@ -12,7 +12,7 @@
|
||||
#include "map_files\PubbyStation\PubbyStation.dmm"
|
||||
#include "map_files\IceBoxStation\IceBoxStation.dmm"
|
||||
|
||||
#ifdef TRAVISBUILDING
|
||||
#ifdef CIBUILDING
|
||||
#include "templates.dm"
|
||||
#endif
|
||||
#endif
|
||||
|
||||
@@ -1,15 +0,0 @@
|
||||
version: '{build}'
|
||||
skip_branch_with_pr: true
|
||||
shallow_clone: true
|
||||
branches:
|
||||
except:
|
||||
- ___TGS3TempBranch
|
||||
- ___TGSTempBranch
|
||||
cache:
|
||||
- C:\byond\ -> dependencies.sh, Dockerfile
|
||||
build_script:
|
||||
- ps: tools/appveyor/build.ps1
|
||||
- ps: "$deployPath = $env:APPVEYOR_BUILD_FOLDER + '/deploy'; bash tools/deploy.sh $deployPath"
|
||||
- ps: "[System.IO.Compression.ZipFile]::CreateFromDirectory($env:APPVEYOR_BUILD_FOLDER + '/deploy', $env:APPVEYOR_BUILD_FOLDER + '/deploy.zip')"
|
||||
artifacts:
|
||||
- path: deploy.zip
|
||||
@@ -59,11 +59,11 @@
|
||||
#warn compiling in TESTING mode. testing() debug messages will be visible.
|
||||
#endif
|
||||
|
||||
#ifdef TRAVISBUILDING
|
||||
#ifdef CIBUILDING
|
||||
#define UNIT_TESTS
|
||||
#endif
|
||||
|
||||
#ifdef TRAVISTESTING
|
||||
#ifdef CITESTING
|
||||
#define TESTING
|
||||
#endif
|
||||
|
||||
|
||||
@@ -689,7 +689,7 @@
|
||||
/datum/design/surgery/healing //PLEASE ACCOUNT FOR UNIQUE HEALING BRANCHES IN THE hptech HREF (currently 2 for Brute/Burn; Combo is bonus)
|
||||
name = "Tend Wounds"
|
||||
desc = "An upgraded version of the original surgery."
|
||||
id = "surgery_healing_base" //holder because travis cries otherwise. Not used in techweb unlocks.
|
||||
id = "surgery_healing_base" //holder because CI cries otherwise. Not used in techweb unlocks.
|
||||
research_icon_state = "surgery_chest"
|
||||
|
||||
/datum/design/surgery/healing/brute_upgrade
|
||||
|
||||
@@ -1,10 +1,8 @@
|
||||
if(!(Test-Path -Path "C:/byond")){
|
||||
bash tools/appveyor/download_byond.sh
|
||||
bash tools/ci/download_byond.sh
|
||||
[System.IO.Compression.ZipFile]::ExtractToDirectory("C:/byond.zip", "C:/")
|
||||
Remove-Item C:/byond.zip
|
||||
}
|
||||
|
||||
Set-Location $env:APPVEYOR_BUILD_FOLDER
|
||||
|
||||
&"C:/byond/bin/dm.exe" -max_errors 0 tgstation.dme
|
||||
exit $LASTEXITCODE
|
||||
exit $LASTEXITCODE
|
||||
Executable → Regular
Executable → Regular
Executable → Regular
Executable → Regular
Executable → Regular
@@ -1,7 +1,7 @@
|
||||
SQL_ENABLED
|
||||
ADDRESS 127.0.0.1
|
||||
PORT 3306
|
||||
FEEDBACK_DATABASE tg_travis
|
||||
FEEDBACK_DATABASE tg_ci
|
||||
FEEDBACK_TABLEPREFIX
|
||||
FEEDBACK_LOGIN root
|
||||
FEEDBACK_PASSWORD
|
||||
Executable → Regular
Executable → Regular
Executable → Regular
-2
@@ -10,5 +10,3 @@ npm install --global yarn
|
||||
|
||||
pip3 install --user PyYaml
|
||||
pip3 install --user beautifulsoup4
|
||||
|
||||
phpenv global $PHP_VERSION
|
||||
Executable → Regular
Executable → Regular
Executable → Regular
@@ -0,0 +1,14 @@
|
||||
#!/bin/bash
|
||||
set -euo pipefail
|
||||
|
||||
tools/deploy.sh ci_test
|
||||
rm ci_test/*.dll
|
||||
mkdir ci_test/config
|
||||
|
||||
#test config
|
||||
cp tools/ci/ci_config.txt ci_test/config/config.txt
|
||||
|
||||
cd ci_test
|
||||
DreamDaemon tgstation.dmb -close -trusted -verbose -params "log-directory=ci"
|
||||
cd ..
|
||||
cat ci_test/data/logs/ci/clean_run.lk
|
||||
Executable → Regular
@@ -1,14 +0,0 @@
|
||||
#!/bin/bash
|
||||
set -euo pipefail
|
||||
|
||||
tools/deploy.sh travis_test
|
||||
rm travis_test/*.dll
|
||||
mkdir travis_test/config
|
||||
|
||||
#test config
|
||||
cp tools/travis/travis_config.txt travis_test/config/config.txt
|
||||
|
||||
cd travis_test
|
||||
DreamDaemon tgstation.dmb -close -trusted -verbose -params "log-directory=travis"
|
||||
cd ..
|
||||
cat travis_test/data/logs/travis/clean_run.lk
|
||||
Reference in New Issue
Block a user