Skip to content

Commit ddd5e73

Browse files
committed
Merge branch 'release/v23.3.0'
2 parents 1ca0b54 + 0d3402d commit ddd5e73

File tree

334 files changed

+22043
-329
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

334 files changed

+22043
-329
lines changed

.github/ISSUE_TEMPLATE/bug_report.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ body:
3434
- Ubuntu 20.04
3535
- Ubuntu 18.04
3636
- Ubuntu 16.04
37+
- Debian 12
3738
- Debian 11
3839
- Debian 10
3940
- Debian 9

.github/ISSUE_TEMPLATE/feature_request.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ body:
3434
- Ubuntu 20.04
3535
- Ubuntu 18.04
3636
- Ubuntu 16.04
37+
- Debian 12
3738
- Debian 11
3839
- Debian 10
3940
- Debian 9

.github/workflows/details-check.yml

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
name: Details Check
2+
# This action will check that LinuxGSM is picking up game server config and parameter variables.
3+
on:
4+
workflow_dispatch:
5+
push:
6+
7+
jobs:
8+
create-matrix:
9+
runs-on: ubuntu-latest
10+
outputs:
11+
matrix: ${{ steps.set-matrix.outputs.matrix }}
12+
steps:
13+
- name: Checkout
14+
uses: actions/checkout@v3
15+
16+
- name: Generate matrix with generate-matrix.sh
17+
run: chmod +x .github/workflows/detals-check-generate-matrix.sh; .github/workflows/detals-check-generate-matrix.sh
18+
19+
- id: set-matrix
20+
run: |
21+
shortnamearray=$(cat shortnamearray.json)
22+
echo "${shortnamearray}"
23+
echo -n "matrix=${shortnamearray}" >> $GITHUB_OUTPUT
24+
25+
details-check:
26+
needs: create-matrix
27+
continue-on-error: true
28+
runs-on: ubuntu-latest
29+
30+
strategy:
31+
matrix: ${{ fromJSON(needs.create-matrix.outputs.matrix) }}
32+
33+
steps:
34+
- name: Install dependencies
35+
run: sudo apt-get install libxml2-utils jq
36+
37+
- name: Download linuxgsm.sh
38+
run: wget https://raw.githubusercontent.com/GameServerManagers/LinuxGSM/${GITHUB_REF#refs/heads/}/linuxgsm.sh; chmod +x linuxgsm.sh
39+
40+
- name: Grab server
41+
run: LGSM_GITHUBBRANCH="${GITHUB_REF#refs/heads/}" ./linuxgsm.sh ${{ matrix.shortname }}server
42+
43+
- name: Enable developer mode
44+
run: LGSM_GITHUBBRANCH="${GITHUB_REF#refs/heads/}" ./${{ matrix.shortname }}server developer
45+
46+
- id: sets-servercfgname
47+
name: Generate servercfgname
48+
run: |
49+
servercfg=$(sed -n "/^\<servercfgdefault\>/ { s/.*= *\"\?\([^\"']*\)\"\?/\1/p;q }" lgsm/config-lgsm/${{ matrix.shortname }}server/_default.cfg)
50+
echo "servercfgname=$servercfg" >> "$GITHUB_OUTPUT"
51+
52+
- name: Download config
53+
run: |
54+
if [ -z "${{ steps.sets-servercfgname.outputs.servercfgname }}" ]; then
55+
echo "This game server has no config file."
56+
else
57+
curl -f -o config "https://raw.githubusercontent.com/GameServerManagers/Game-Server-Configs/rename/${{ matrix.shortname }}/${{ steps.sets-servercfgname.outputs.servercfgname }}"
58+
fi
59+
- name: Display config
60+
run: |
61+
if [ -z "${{ steps.sets-servercfgname.outputs.servercfgname }}" ]; then
62+
echo "This game server has no config file."
63+
else
64+
cat config
65+
fi
66+
67+
- name: Display parameters
68+
run: grep "startparameters" lgsm/config-default/config-lgsm/${{ matrix.shortname }}server/_default.cfg
69+
70+
- name: Detect details
71+
run: LGSM_GITHUBBRANCH="${GITHUB_REF#refs/heads/}" ./${{ matrix.shortname }}server detect-details
72+
73+
- name: Query Raw
74+
run: LGSM_GITHUBBRANCH="${GITHUB_REF#refs/heads/}" ./${{ matrix.shortname }}server query-raw
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
#!/bin/bash
2+
3+
curl "https://raw.githubusercontent.com/GameServerManagers/LinuxGSM/master/lgsm/data/serverlist.csv" | grep -v '^[[:blank:]]*$' > serverlist.csv
4+
5+
echo -n "{" > "shortnamearray.json"
6+
echo -n "\"include\":[" >> "shortnamearray.json"
7+
8+
while read -r line; do
9+
shortname=$(echo "$line" | awk -F, '{ print $1 }')
10+
export shortname
11+
servername=$(echo "$line" | awk -F, '{ print $2 }')
12+
export servername
13+
gamename=$(echo "$line" | awk -F, '{ print $3 }')
14+
export gamename
15+
distro=$(echo "$line" | awk -F, '{ print $4 }')
16+
export distro
17+
echo -n "{" >> "shortnamearray.json"
18+
echo -n "\"shortname\":" >> "shortnamearray.json"
19+
echo -n "\"${shortname}\"" >> "shortnamearray.json"
20+
echo -n "}," >> "shortnamearray.json"
21+
done < serverlist.csv
22+
sed -i '$ s/.$//' "shortnamearray.json"
23+
echo -n "]" >> "shortnamearray.json"
24+
echo -n "}" >> "shortnamearray.json"
25+
rm serverlist.csv
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
#!/bin/bash
2+
echo "Checking that all the game servers are listed in all csv files"
3+
echo "this check will ensure serverlist.csv has the same number of lines (-2 lines) as the other csv files"
4+
# count the number of lines in the serverlist.csv
5+
cd "lgsm/data" || exit
6+
serverlistcount="$(wc -l < serverlist.csv)"
7+
echo "serverlistcount: $serverlistcount"
8+
# get list of all csv files starting with ubunutu debian centos
9+
csvlist="$(ls -1 | grep -E '^(ubuntu|debian|centos|rhel|almalinux|rocky).*\.csv$')"
10+
# loop though each csv file and make sure the number of lines is the same as the serverlistcount
11+
for csv in $csvlist; do
12+
csvcount="$(wc -l < "${csv}")"
13+
csvcount=$((csvcount-2))
14+
if [ "$csvcount" -ne "$serverlistcount" ]; then
15+
echo "ERROR: $csv ($csvcount) does not match serverlist.csv ($serverlistcount)"
16+
exitcode=1
17+
else
18+
echo "OK: $csv ($csvcount) and serverlist.csv ($serverlistcount) match"
19+
fi
20+
done
21+
22+
exit ${exitcode}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
name: Server list Validation
2+
on:
3+
workflow_dispatch:
4+
push:
5+
6+
jobs:
7+
serverlist-validate:
8+
runs-on: ubuntu-latest
9+
steps:
10+
- uses: actions/checkout@v3
11+
12+
- name: compare versions
13+
run: chmod +x .github/workflows/serverlist-validate.sh; .github/workflows/serverlist-validate.sh

.github/workflows/version-check.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/bin/bash
22
version=$(grep "version=" linuxgsm.sh | sed -e 's/version//g' | tr -d '="')
3-
modulesversion=$(grep "modulesversion=" lgsm/functions/core_functions.sh | sed -e 's/modulesversion//g' | tr -d '="')
3+
modulesversion=$(grep "modulesversion=" lgsm/modules/core_modules.sh | sed -e 's/modulesversion//g' | tr -d '="')
44

55
if [ "${version}" != "${modulesversion}" ]; then
66
echo "Error! LinuxGSM version mismatch"

.github/workflows/version-check.yml

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,15 @@
1-
# This is a basic workflow to help you get started with Actions
2-
31
name: Version Check
42

5-
# Controls when the action will run. Triggers the workflow on push or pull request
6-
# events but only for the master branch
73
on: push
84

9-
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
105
permissions:
116
contents: read
127

138
jobs:
14-
# This workflow contains a single job called "build"
15-
Version-Check:
16-
# The type of runner that the job will run on
9+
version-Check:
1710
runs-on: ubuntu-latest
18-
19-
# Steps represent a sequence of tasks that will be executed as part of the job
2011
steps:
21-
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
2212
- uses: actions/checkout@v3
2313

24-
# Runs a single command using the runners shell
2514
- name: compare versions
2615
run: chmod +x .github/workflows/version-check.sh; .github/workflows/version-check.sh
File renamed without changes.

.vscode/extensions.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
"yzhang.markdown-all-in-one",
66
"esbenp.prettier-vscode",
77
"timonwong.shellcheck",
8-
"foxundermoon.shell-format",
98
"redhat.vscode-yaml"
109
]
1110
}

0 commit comments

Comments
 (0)