Change the way that Vintage Story API is added to the CI server
This commit is contained in:
parent
c3ec58dbb5
commit
6a235366e5
5 changed files with 92 additions and 17 deletions
|
@ -1,17 +1,9 @@
|
||||||
FROM git.zontreck.com/packages/appimage:latest AS BUILDER
|
|
||||||
|
|
||||||
WORKDIR /
|
|
||||||
RUN wget https://cdn.vintagestory.at/gamefiles/stable/vs_server_linux-x64_1.20.12.tar.gz
|
|
||||||
WORKDIR /vintagestory
|
|
||||||
RUN tar -xvf /vs_server_linux-x64_1.20.12.tar.gz && rm /*.tar.gz
|
|
||||||
|
|
||||||
|
|
||||||
FROM git.zontreck.com/packages/appimage:latest
|
FROM git.zontreck.com/packages/appimage:latest
|
||||||
|
|
||||||
ENV PUB NAN
|
ENV PUB NAN
|
||||||
ENV AGENT NAN
|
ENV AGENT NAN
|
||||||
|
ENV VSAPI 1
|
||||||
LABEL VS_API 1.20.12
|
LABEL VINTAGESTORY API is available
|
||||||
|
|
||||||
WORKDIR /
|
WORKDIR /
|
||||||
ADD ./entrypoint.sh /entrypoint.sh
|
ADD ./entrypoint.sh /entrypoint.sh
|
||||||
|
@ -19,9 +11,16 @@ RUN chmod +x /entrypoint.sh
|
||||||
|
|
||||||
WORKDIR /root/.local/share
|
WORKDIR /root/.local/share
|
||||||
|
|
||||||
COPY --from=BUILDER --chown=root:root /vintagestory ./vintagestory
|
ADD ./dlvs.sh /bin/dlvs
|
||||||
ADD ./update_vs_dotgame /bin/update_vs_dotgame
|
ADD ./pullvs.sh /bin/pullvs
|
||||||
RUN chmod +x /bin/update_vs_dotgame
|
ADD ./mkdotgame /bin/mkdotgame
|
||||||
|
|
||||||
|
# Bootstrap all the commonly used Vintage Story versions
|
||||||
|
|
||||||
|
RUN chmod +x /bin/mkdotgame && \
|
||||||
|
ln -sfv /bin/mkdotgame /bin/update_vs_dotgame && \
|
||||||
|
chmod +x /bin/dlvs && chmod +x /bin/pullvs && \
|
||||||
|
pullvs
|
||||||
|
|
||||||
|
|
||||||
ENTRYPOINT [ "/bin/bash", "/entrypoint.sh" ]
|
ENTRYPOINT [ "/bin/bash", "/entrypoint.sh" ]
|
||||||
|
|
34
LinuxGeneralCompiler/dlvs.sh
Normal file
34
LinuxGeneralCompiler/dlvs.sh
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Function to download game files based on version
|
||||||
|
download_game() {
|
||||||
|
local version=$1
|
||||||
|
local url
|
||||||
|
local extract_path="/vintagestory_${version}"
|
||||||
|
|
||||||
|
# Check if version contains a "-"
|
||||||
|
if [[ $version == *"-"* ]]; then
|
||||||
|
url="https://cdn.vintagestory.at/gamefiles/unstable/vs_server_linux-x64_${version}.tar.gz"
|
||||||
|
else
|
||||||
|
url="https://cdn.virtualstory.at/gamefiles/stable/vs_server_linux-x64_${version}.tar.gz"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Check if extract path already exists and is not empty
|
||||||
|
if [ -d "$extract_path" ] && [ ! -z "$(ls -A "$extract_path")" ]; then
|
||||||
|
echo "Extract path $extract_path already exists and is not empty, skipping download."
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Download game files
|
||||||
|
download_path="/vs_server_linux-x64_${version}"
|
||||||
|
wget "$url" -O "${download_path}.tar.gz"
|
||||||
|
|
||||||
|
# Extract and clean up
|
||||||
|
cd $extract_path
|
||||||
|
tar -xvf "${download_path}.tar.gz" && rm "${download_path}"/"${version}"*.tar.gz
|
||||||
|
cd /
|
||||||
|
}
|
||||||
|
|
||||||
|
# Call the function with version as argument (e.g. "1.20.12")
|
||||||
|
|
||||||
|
download_game "$1"
|
8
LinuxGeneralCompiler/mkdotgame
Executable file
8
LinuxGeneralCompiler/mkdotgame
Executable file
|
@ -0,0 +1,8 @@
|
||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
|
||||||
|
local version=$1
|
||||||
|
|
||||||
|
rm .game || true
|
||||||
|
dlvs $version || true
|
||||||
|
ln -sv "~/.local/share/vintagestory_${version}" .game
|
38
LinuxGeneralCompiler/pullvs.sh
Normal file
38
LinuxGeneralCompiler/pullvs.sh
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Function to download game files based on version
|
||||||
|
download_game() {
|
||||||
|
dlvs $1
|
||||||
|
}
|
||||||
|
|
||||||
|
# Call the function with version as argument (e.g. "1.20.12")
|
||||||
|
|
||||||
|
# Current Pre-release
|
||||||
|
|
||||||
|
download_game "1.21.0-pre.1"
|
||||||
|
|
||||||
|
# Releases
|
||||||
|
|
||||||
|
download_game "1.20.12"
|
||||||
|
download_game "1.20.11"
|
||||||
|
download_game "1.20.10"
|
||||||
|
download_game "1.20.9"
|
||||||
|
download_game "1.20.8"
|
||||||
|
download_game "1.20.7"
|
||||||
|
download_game "1.20.6"
|
||||||
|
download_game "1.20.5"
|
||||||
|
download_game "1.20.4"
|
||||||
|
download_game "1.20.3"
|
||||||
|
download_game "1.20.2"
|
||||||
|
download_game "1.20.1"
|
||||||
|
download_game "1.20.0"
|
||||||
|
download_game "1.19.8"
|
||||||
|
download_game "1.19.7"
|
||||||
|
download_game "1.19.6"
|
||||||
|
download_game "1.19.5"
|
||||||
|
download_game "1.19.4"
|
||||||
|
download_game "1.19.3"
|
||||||
|
download_game "1.19.2"
|
||||||
|
download_game "1.19.1"
|
||||||
|
download_game "1.19.0"
|
||||||
|
download_game "1.18.15"
|
|
@ -1,4 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
|
|
||||||
rm .game || true
|
|
||||||
ln -sv ~/.local/share/vintagestory .game
|
|
Loading…
Add table
Add a link
Reference in a new issue