Add support for wildcard files in publish-release workflow
This commit is contained in:
76
.github/workflows/publish-release.yml
vendored
76
.github/workflows/publish-release.yml
vendored
@@ -7,16 +7,18 @@ on:
|
||||
workflow_call:
|
||||
|
||||
env:
|
||||
ZIP_BASE_NAME: luacsforbarotrauma
|
||||
ZIP_FILES_SERVER: |
|
||||
ARCHIVE_BASE_NAME: luacsforbarotrauma
|
||||
# XXX: these file names are subject to shell expansion.
|
||||
# Be careful when using special characters.
|
||||
ARCHIVE_FILES_SERVER: |
|
||||
DedicatedServer.deps.json
|
||||
DedicatedServer.dll
|
||||
DedicatedServer.pdb
|
||||
ZIP_FILES_CLIENT: |
|
||||
ARCHIVE_FILES_CLIENT: |
|
||||
Barotrauma.deps.json
|
||||
Barotrauma.dll
|
||||
Barotrauma.pdb
|
||||
ZIP_FILES_SHARED: |
|
||||
ARCHIVE_FILES_SHARED: |
|
||||
0Harmony.dll
|
||||
Sigil.dll
|
||||
MoonSharp.Interpreter.dll
|
||||
@@ -32,6 +34,7 @@ env:
|
||||
System.Collections.Immutable.dll
|
||||
System.Reflection.Metadata.dll
|
||||
System.Runtime.CompilerServices.Unsafe.dll
|
||||
mscordaccore_amd64_amd64_*
|
||||
Lua
|
||||
|
||||
jobs:
|
||||
@@ -66,32 +69,15 @@ jobs:
|
||||
- name: "Build: MacClient"
|
||||
run: dotnet publish Barotrauma/BarotraumaClient/MacClient.csproj -c Release -clp:"ErrorsOnly;Summary" --self-contained -r osx-x64 \/p:Platform="x64"
|
||||
|
||||
- name: Create zip files
|
||||
- name: Create archives
|
||||
run: |
|
||||
IFS=$'\n' readarray -td $'\n' ZIP_FILES_SHARED <<< "$ZIP_FILES_SHARED"
|
||||
IFS=$'\n' readarray -td $'\n' ZIP_FILES_CLIENT <<< "$ZIP_FILES_CLIENT"
|
||||
IFS=$'\n' readarray -td $'\n' ZIP_FILES_SERVER <<< "$ZIP_FILES_SERVER"
|
||||
set -e
|
||||
shopt -s globstar nullglob
|
||||
shopt -u dotglob
|
||||
|
||||
for i in "${!ZIP_FILES_SHARED[@]}"; do
|
||||
file="${ZIP_FILES_SHARED[i]}"
|
||||
if [[ -z "$file" ]]; then
|
||||
unset "ZIP_FILES_SHARED[$i]"
|
||||
fi
|
||||
done
|
||||
|
||||
for i in "${!ZIP_FILES_CLIENT[@]}"; do
|
||||
file="${ZIP_FILES_CLIENT[i]}"
|
||||
if [[ -z "$file" ]]; then
|
||||
unset "ZIP_FILES_CLIENT[$i]"
|
||||
fi
|
||||
done
|
||||
|
||||
for i in "${!ZIP_FILES_SERVER[@]}"; do
|
||||
file="${ZIP_FILES_SERVER[i]}"
|
||||
if [[ -z "$file" ]]; then
|
||||
unset "ZIP_FILES_SERVER[$i]"
|
||||
fi
|
||||
done
|
||||
IFS=$'\n' readarray -td $'\n' ARCHIVE_FILES_SHARED <<< "$ARCHIVE_FILES_SHARED"
|
||||
IFS=$'\n' readarray -td $'\n' ARCHIVE_FILES_CLIENT <<< "$ARCHIVE_FILES_CLIENT"
|
||||
IFS=$'\n' readarray -td $'\n' ARCHIVE_FILES_SERVER <<< "$ARCHIVE_FILES_SERVER"
|
||||
|
||||
platforms=(
|
||||
"windows"
|
||||
@@ -110,17 +96,15 @@ jobs:
|
||||
publish_dir="${publish_dirs[i]}"
|
||||
cd "$publish_dir"
|
||||
echo "Creating build_${platform}.zip"
|
||||
zip -x *.zip -r "${ZIP_BASE_NAME}_build_${platform}.zip" .
|
||||
zip -x *.zip -r "${ARCHIVE_BASE_NAME}_build_${platform}.zip" .
|
||||
echo "Creating patch_${platform}_client.zip"
|
||||
zip -x *.zip -r "${ZIP_BASE_NAME}_patch_${platform}_client.zip" \
|
||||
"${ZIP_FILES_SHARED[@]}" \
|
||||
mscordaccore_amd64_amd64_* \
|
||||
"${ZIP_FILES_CLIENT[@]}"
|
||||
zip -x *.zip -r "${ARCHIVE_BASE_NAME}_patch_${platform}_client.zip" \
|
||||
${ARCHIVE_FILES_SHARED[@]} \
|
||||
${ARCHIVE_FILES_CLIENT[@]}
|
||||
echo "Creating patch_${platform}_server.zip"
|
||||
zip -x *.zip -r "${ZIP_BASE_NAME}_patch_${platform}_server.zip" \
|
||||
"${ZIP_FILES_SHARED[@]}" \
|
||||
mscordaccore_amd64_amd64_* \
|
||||
"${ZIP_FILES_SERVER[@]}"
|
||||
zip -x *.zip -r "${ARCHIVE_BASE_NAME}_patch_${platform}_server.zip" \
|
||||
${ARCHIVE_FILES_SHARED[@]} \
|
||||
${ARCHIVE_FILES_SERVER[@]}
|
||||
)
|
||||
done
|
||||
|
||||
@@ -132,12 +116,12 @@ jobs:
|
||||
prerelease: false
|
||||
title: Automatic Build
|
||||
files: |
|
||||
Barotrauma/bin/ReleaseWindows/netcoreapp3.1/win-x64/publish/${{ env.ZIP_BASE_NAME }}_build_windows.zip
|
||||
Barotrauma/bin/ReleaseWindows/netcoreapp3.1/win-x64/publish/${{ env.ZIP_BASE_NAME }}_patch_windows_client.zip
|
||||
Barotrauma/bin/ReleaseWindows/netcoreapp3.1/win-x64/publish/${{ env.ZIP_BASE_NAME }}_patch_windows_server.zip
|
||||
Barotrauma/bin/ReleaseLinux/netcoreapp3.1/linux-x64/publish/${{ env.ZIP_BASE_NAME }}_build_linux.zip
|
||||
Barotrauma/bin/ReleaseLinux/netcoreapp3.1/linux-x64/publish/${{ env.ZIP_BASE_NAME }}_patch_linux_client.zip
|
||||
Barotrauma/bin/ReleaseLinux/netcoreapp3.1/linux-x64/publish/${{ env.ZIP_BASE_NAME }}_patch_linux_server.zip
|
||||
Barotrauma/bin/ReleaseMac/netcoreapp3.1/osx-x64/publish/${{ env.ZIP_BASE_NAME }}_build_mac.zip
|
||||
Barotrauma/bin/ReleaseMac/netcoreapp3.1/osx-x64/publish/${{ env.ZIP_BASE_NAME }}_patch_mac_client.zip
|
||||
Barotrauma/bin/ReleaseMac/netcoreapp3.1/osx-x64/publish/${{ env.ZIP_BASE_NAME }}_patch_mac_server.zip
|
||||
Barotrauma/bin/ReleaseWindows/netcoreapp3.1/win-x64/publish/${{ env.ARCHIVE_BASE_NAME }}_build_windows.zip
|
||||
Barotrauma/bin/ReleaseWindows/netcoreapp3.1/win-x64/publish/${{ env.ARCHIVE_BASE_NAME }}_patch_windows_client.zip
|
||||
Barotrauma/bin/ReleaseWindows/netcoreapp3.1/win-x64/publish/${{ env.ARCHIVE_BASE_NAME }}_patch_windows_server.zip
|
||||
Barotrauma/bin/ReleaseLinux/netcoreapp3.1/linux-x64/publish/${{ env.ARCHIVE_BASE_NAME }}_build_linux.zip
|
||||
Barotrauma/bin/ReleaseLinux/netcoreapp3.1/linux-x64/publish/${{ env.ARCHIVE_BASE_NAME }}_patch_linux_client.zip
|
||||
Barotrauma/bin/ReleaseLinux/netcoreapp3.1/linux-x64/publish/${{ env.ARCHIVE_BASE_NAME }}_patch_linux_server.zip
|
||||
Barotrauma/bin/ReleaseMac/netcoreapp3.1/osx-x64/publish/${{ env.ARCHIVE_BASE_NAME }}_build_mac.zip
|
||||
Barotrauma/bin/ReleaseMac/netcoreapp3.1/osx-x64/publish/${{ env.ARCHIVE_BASE_NAME }}_patch_mac_client.zip
|
||||
Barotrauma/bin/ReleaseMac/netcoreapp3.1/osx-x64/publish/${{ env.ARCHIVE_BASE_NAME }}_patch_mac_server.zip
|
||||
|
||||
Reference in New Issue
Block a user