Skip to content

Commit b5074cb

Browse files
Merge branch 'main' into patch-18
2 parents efc496c + 72f29bf commit b5074cb

4 files changed

Lines changed: 33 additions & 11 deletions

File tree

.github/workflows/check_for_updates.yml

Lines changed: 23 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -20,15 +20,17 @@ jobs:
2020
latest_sixtyfour: ${{ steps.latest_versions.outputs.sixtyfour }}
2121
latest_dev: ${{ steps.latest_versions.outputs.dev }}
2222
latest_prerelease: ${{ steps.latest_versions.outputs.prerelease }}
23+
latest_network_test: ${{ steps.latest_versions.outputs.network_test }}
2324
needs_update_public: ${{ steps.needs_update.outputs.public }}
2425
needs_update_sixtyfour: ${{ steps.needs_update.outputs.sixtyfour }}
2526
needs_update_dev: ${{ steps.needs_update.outputs.dev }}
2627
needs_update_prerelease: ${{ steps.needs_update.outputs.prerelease }}
28+
needs_update_network_test: ${{ steps.needs_update.outputs.network_test }}
2729

2830
any_update_needed: ${{ steps.needs_update.outputs.any }}
2931
steps:
3032
- name: Checkout Full Repo
31-
uses: actions/checkout@v4
33+
uses: actions/checkout@v6
3234
with:
3335
fetch-depth: 0
3436
path: full_repo
@@ -73,13 +75,15 @@ jobs:
7375
sixtyfour=$(grep -A 2 '"x86-64"' "$struct" | grep '"buildid"' | awk '{print $2}' | sed 's/"//g')
7476
dev=$(grep -A 2 '"dev"' "$struct" | grep '"buildid"' | awk '{print $2}' | sed 's/"//g')
7577
prerelease=$(grep -A 2 '"prerelease"' "$struct" | grep '"buildid"' | awk '{print $2}' | sed 's/"//g')
78+
network_test=$(grep -A 2 '"network_test"' "$struct" | grep '"buildid"' | awk '{print $2}' | sed 's/"//g')
7679
7780
echo "Latest Public ID: '$public'"
7881
echo "Latest 64bit ID: '$sixtyfour'"
7982
echo "Latest Dev ID: '$dev'"
8083
echo "Latest prerelease ID: '$prerelease'"
84+
echo "Latest network_test ID: '$network_test'"
8185
82-
if [ -z "$public" ] || [ -z "$sixtyfour" ] || [ -z "$dev" ] || [ -z "$prerelease" ]; then
86+
if [ -z "$public" ] || [ -z "$sixtyfour" ] || [ -z "$dev" ] || [ -z "$prerelease" ] || [ -z "$network_test" ]; then
8387
echo "Failed to get one or more latest build IDs"
8488
echo "Raw Output from SteamCMD:"
8589
cat "$GITHUB_WORKSPACE/raw_output.txt"
@@ -91,9 +95,10 @@ jobs:
9195
echo "sixtyfour=$sixtyfour" >> $GITHUB_OUTPUT
9296
echo "dev=$dev" >> $GITHUB_OUTPUT
9397
echo "prerelease=$prerelease" >> $GITHUB_OUTPUT
98+
echo "network_test=$network_test" >> $GITHUB_OUTPUT
9499
95100
- name: Checkout last build branch
96-
uses: actions/checkout@v4
101+
uses: actions/checkout@v6
97102
with:
98103
ref: build/last-build-versions
99104
path: build_versions
@@ -105,16 +110,19 @@ jobs:
105110
sixtyfour=$(cat $GITHUB_WORKSPACE/build_versions/last_64bit_build.txt 2>/dev/null || echo "0")
106111
dev=$(cat $GITHUB_WORKSPACE/build_versions/last_dev_build.txt 2>/dev/null || echo "0")
107112
prerelease=$(cat $GITHUB_WORKSPACE/build_versions/last_prerelease_build.txt 2>/dev/null || echo "0")
113+
network_test=$(cat $GITHUB_WORKSPACE/build_versions/last_network_test_build.txt 2>/dev/null || echo "0")
108114
109115
echo "Last Public ID built: '$public'"
110116
echo "Last 64bit ID built: '$sixtyfour'"
111117
echo "Last Dev ID built: '$dev'"
112118
echo "Last prerelease ID built: '$prerelease'"
119+
echo "Last network_test ID built: '$network_test'"
113120
114121
echo "public=$public" >> $GITHUB_OUTPUT
115122
echo "sixtyfour=$sixtyfour" >> $GITHUB_OUTPUT
116123
echo "dev=$dev" >> $GITHUB_OUTPUT
117124
echo "prerelease=$prerelease" >> $GITHUB_OUTPUT
125+
echo "network_test=$network_test" >> $GITHUB_OUTPUT
118126
119127
- name: Identify pending updates
120128
id: needs_update
@@ -124,6 +132,7 @@ jobs:
124132
needs_sixtyfour=$([[ "${{ steps.latest_versions.outputs.sixtyfour }}" != "${{ steps.last_versions.outputs.sixtyfour }}" ]] && echo "true" || echo "false")
125133
needs_dev=$([[ "${{ steps.latest_versions.outputs.dev }}" != "${{ steps.last_versions.outputs.dev }}" ]] && echo "true" || echo "false")
126134
needs_prerelease=$([[ "${{ steps.latest_versions.outputs.prerelease }}" != "${{ steps.last_versions.outputs.prerelease }}" ]] && echo "true" || echo "false")
135+
needs_network_test=$([[ "${{ steps.latest_versions.outputs.network_test }}" != "${{ steps.last_versions.outputs.network_test }}" ]] && echo "true" || echo "false")
127136
128137
# If this was a manual run with the "force_rebuild" option, update them all regardless of if they're outdated
129138
if [[ "${{ github.event_name }}" == "workflow_dispatch" && "${{ github.event.inputs.force_rebuild }}" == "true" ]]; then
@@ -132,21 +141,24 @@ jobs:
132141
needs_sixtyfour="true"
133142
needs_dev="true"
134143
needs_prerelease="true"
144+
needs_network_test="true"
135145
fi
136146
137147
echo "Should build Public: '$needs_public'"
138148
echo "Should build 64bit: '$needs_sixtyfour'"
139149
echo "Should build Dev: '$needs_dev'"
140150
echo "Should build Prerelease: '$needs_prerelease'"
151+
echo "Should build Network_test: '$needs_network_test'"
141152
142153
echo "public=$needs_public" >> $GITHUB_OUTPUT
143154
echo "sixtyfour=$needs_sixtyfour" >> $GITHUB_OUTPUT
144155
echo "dev=$needs_dev" >> $GITHUB_OUTPUT
145156
echo "prerelease=$needs_prerelease" >> $GITHUB_OUTPUT
157+
echo "network_test=$needs_network_test" >> $GITHUB_OUTPUT
146158
147159
# Determine if any update is needed for the final commit step
148160
any_update="false"
149-
if [[ "$needs_public" == "true" || "$needs_sixtyfour" == "true" || "$needs_dev" == "true" || "$needs_prerelease" == "true" ]]; then
161+
if [[ "$needs_public" == "true" || "$needs_sixtyfour" == "true" || "$needs_dev" == "true" || "$needs_prerelease" == "true" || "$needs_network_test" == "true" ]]; then
150162
any_update="true"
151163
fi
152164
echo "Any update needed: $any_update"
@@ -159,7 +171,7 @@ jobs:
159171
strategy:
160172
fail-fast: false
161173
matrix:
162-
branch: [public, x86-64, dev, prerelease]
174+
branch: [public, x86-64, dev, prerelease, network_test]
163175
include:
164176
- branch: public
165177
needs_update_flag: ${{ needs.check_updates.outputs.needs_update_public }}
@@ -173,10 +185,13 @@ jobs:
173185
- branch: prerelease
174186
needs_update_flag: ${{ needs.check_updates.outputs.needs_update_prerelease }}
175187
game_version: ${{ needs.check_updates.outputs.latest_prerelease }}
188+
- branch: network_test
189+
needs_update_flag: ${{ needs.check_updates.outputs.needs_update_network_test }}
190+
game_version: ${{ needs.check_updates.outputs.latest_network_test }}
176191

177192
steps:
178193
- name: Checkout Full Repo
179-
uses: actions/checkout@v4
194+
uses: actions/checkout@v6
180195
with:
181196
path: full_repo
182197

@@ -198,7 +213,7 @@ jobs:
198213

199214
steps:
200215
- name: Checkout last build branch
201-
uses: actions/checkout@v4
216+
uses: actions/checkout@v6
202217
with:
203218
ref: build/last-build-versions
204219
path: build_versions
@@ -212,6 +227,7 @@ jobs:
212227
echo "${{ needs.check_updates.outputs.latest_sixtyfour }}" > ./last_64bit_build.txt
213228
echo "${{ needs.check_updates.outputs.latest_dev }}" > ./last_dev_build.txt
214229
echo "${{ needs.check_updates.outputs.latest_prerelease }}" > ./last_prerelease_build.txt
230+
echo "${{ needs.check_updates.outputs.latest_network_test }}" > ./last_network_test_build.txt
215231
216232
git config user.name "github-actions"
217233
git config user.email "github-actions@github.com"

.github/workflows/run_tests.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ jobs:
117117
steps:
118118
- name: "Check out the repo"
119119
if: ${{ inputs.no-checkout != 'true' }}
120-
uses: actions/checkout@v4
120+
uses: actions/checkout@v6
121121
with:
122122
path: project
123123

@@ -192,7 +192,7 @@ jobs:
192192
193193
- name: Download artifact (Github)
194194
if: inputs.download-artifact != '' && !(startsWith(inputs.download-artifact, 'https://') || startsWith(inputs.download-artifact, 'http://'))
195-
uses: actions/download-artifact@v4
195+
uses: actions/download-artifact@v8
196196
with:
197197
path: ${{ github.workspace }}/gluatest/docker/_gluatest_artifacts/
198198
name: "${{ inputs.download-artifact }}"
@@ -284,7 +284,7 @@ jobs:
284284
285285
- name: Upload Test Log Artifact
286286
if: always() && inputs.logs-as-artifact == 'true'
287-
uses: actions/upload-artifact@v4
287+
uses: actions/upload-artifact@v7
288288
with:
289289
name: gluatest-log-${{ inputs.branch }}
290290
path: ${{ github.workspace }}/gluatest-log-${{ inputs.branch }}.log

docker/Dockerfile

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,14 @@ ARG home=/home/steam
1212
ARG gmodroot=$home/gmodserver
1313
ARG server=$home/gmodserver/garrysmod
1414

15+
# HACK! Fix this once you know how!
16+
# We have no idea why, but the first steamcmd call updates Steam BUT then randomly fails the install:
17+
# > ERROR! Failed to install app '4020' (Missing configuration)
18+
#
19+
# So as a workaround, we call it a second time, where it then decides to just magically work... pure magic.
1520
USER steam
1621
RUN echo "Downloading $GMOD_BRANCH branch"; \
22+
./steamcmd.sh +force_install_dir $gmodroot +login anonymous +app_update 4020 -beta $GMOD_BRANCH validate +quit; \
1723
./steamcmd.sh +force_install_dir $gmodroot +login anonymous +app_update 4020 -beta $GMOD_BRANCH validate +quit;
1824

1925
# Initial server config

lua/gluatest/expectations/expect.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ return function( subject, ... )
1818
wasNot = negative
1919
}
2020

21-
hook.Run( "GLuaTest_CreateExpect", expect )
21+
hook.Run( "GLuaTest_CreateExpect", subject, expect )
2222

2323
return expect
2424
end

0 commit comments

Comments
 (0)