This repository has been archived by the owner on Apr 8, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 11
135 lines (112 loc) · 3.98 KB
/
beepsky.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
# Beepsky, Goonstation's replacement for a CI service like Travis, utilizing GitHub Actions
# Based on Turdis by Yogstation
name: Beepsky
on: push
jobs:
lint:
name: Run Linters
runs-on: ubuntu-latest
if: "!contains(github.event.head_commit.message, 'skip ci')"
steps:
- uses: actions/checkout@v2
- name: Cache SpacemanDMM
uses: actions/cache@v2
with:
path: $HOME/SpacemanDMM
key: ${{ runner.os }}-spacemandmm
- name: Setup Rust
uses: hecrj/[email protected]
- name: Install Dependencies
run: |
pip3 install setuptools
tools/ci/install_build_tools.sh
tools/ci/install_spaceman_dmm.sh dreamchecker
tools/bootstrap/python -c ''
touch +secret/__secret.dme
- name: Misc Checks
run: |
tools/ci/check_filedirs.sh goonstation.dme
tools/ci/build_tgui.sh
tools/ci/check_grep.sh
tools/bootstrap/python -m dmi.test
tools/bootstrap/python -m mapmerge2.dmm_test
- name: Run Linter
id: linter
run: |
~/dreamchecker > ${GITHUB_WORKSPACE}/output-annotations.txt 2>&1
- name: Annotate Linter
uses: yogstation13/DreamAnnotate@9f2dbe51421affdecc6973c47d34b7f1009d77d3 # v1 - security concerns and all that shit
if: always()
with:
outputFile: output-annotations.txt
compile:
name: Compile
runs-on: ubuntu-latest
if: "!contains(github.event.head_commit.message, 'skip ci')"
steps:
- uses: actions/checkout@v2
- name: Install Dependencies
run: |
sudo dpkg --add-architecture i386
sudo apt-get update || true
sudo apt install libstdc++6:i386
- name: Cache BYOND
uses: actions/cache@v2
with:
path: $HOME/BYOND
key: ${{ runner.os }}-byond
- name: Setup BYOND
run: |
tools/ci/install_byond.sh
cd $GITHUB_WORKSPACE
printenv
echo "BYOND_SYSTEM=/home/runner/BYOND/byond" >> $GITHUB_ENV
echo "/home/runner/BYOND/byond/bin" >> $GITHUB_PATH
echo "LD_LIBRARY_PATH=/home/runner/BYOND/byond/bin:$LD_LIBRARY_PATH" >> $GITHUB_ENV
echo "MANPATH=/home/runner/BYOND/byond/man:$MANPATH" >> $GITHUB_ENV
touch +secret/__secret.dme
- name: Compile
run: |
tools/ci/dm.sh -DCIBUILD goonstation.dme
- name: Prepare Artifacts
run: |
mkdir artifacts
cp goonstation.dmb artifacts
cp goonstation.rsc artifacts
- name: Upload Artifacts
continue-on-error: true #If it can't upload, that's fine.
uses: actions/upload-artifact@v1
with:
name: DMB + RSC
path: ${{github.workspace}}/artifacts
compile_ass:
name: "Compile for Ass Day"
runs-on: ubuntu-latest
if: "${{ false }}" # "!contains(github.event.head_commit.message, 'skip ci')"
steps:
- uses: actions/checkout@v2
- name: Install Dependencies
run: |
sudo dpkg --add-architecture i386
sudo apt-get update || true
sudo apt install libstdc++6:i386
- name: Cache BYOND
uses: actions/cache@v2
with:
path: $HOME/BYOND
key: ${{ runner.os }}-byond
# Ass Jam occurs on the 13th of the month.
- name: Setup BYOND
run: |
tools/ci/install_byond.sh
cd $GITHUB_WORKSPACE
printenv
echo "BYOND_SYSTEM=/home/runner/BYOND/byond" >> $GITHUB_ENV
echo "/home/runner/BYOND/byond/bin" >> $GITHUB_PATH
echo "LD_LIBRARY_PATH=/home/runner/BYOND/byond/bin:$LD_LIBRARY_PATH" >> $GITHUB_ENV
echo "MANPATH=/home/runner/BYOND/byond/man:$MANPATH" >> $GITHUB_ENV
touch +secret/__secret.dme
sed -i 's/BUILD_TIME_DAY 01/BUILD_TIME_DAY 13/' _std/__build.dm
- name: Compile
run: |
tools/ci/dm.sh -DCIBUILD -DTRAVIS_ASSJAM goonstation.dme