GameUpdate: 26/07/09 (#109) #126
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Master Build | |
| on: | |
| push: | |
| branches: | |
| - master | |
| workflow_dispatch: | |
| jobs: | |
| prefetch: | |
| permissions: | |
| contents: write | |
| runs-on: ubuntu-latest | |
| outputs: | |
| git_commit: ${{ steps.envvars.outputs.GITCOMMIT }} | |
| github_sha_short: ${{ steps.envvars.outputs.GITHASH }} | |
| date: ${{ steps.envvars.outputs.GITDATE }} | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v5 | |
| with: | |
| submodules: false | |
| fetch-depth: 99999 | |
| - name: Set Timezone | |
| uses: szenius/set-timezone@v2.0 | |
| with: | |
| timezoneLinux: "Asia/Shanghai" | |
| timezoneMacos: "Asia/Shanghai" | |
| timezoneWindows: "China Standard Time" | |
| - name: Make Environment Variables | |
| id: envvars | |
| run: | | |
| DATETIME=$(date +"%Y/%m/%d %H:%M:%S") | |
| COMMIT_VERSION=$(git rev-list --count HEAD) | |
| COMMIT_HASH=$(git rev-parse --short HEAD) | |
| echo $DATETIME | |
| echo $COMMIT_VERSION | |
| echo $COMMIT_HASH | |
| echo "GITCOMMIT=$COMMIT_VERSION" >> $GITHUB_OUTPUT | |
| echo "GITDATE=$DATETIME" >> $GITHUB_OUTPUT | |
| echo "GITHASH=$COMMIT_HASH" >> $GITHUB_OUTPUT | |
| windows: | |
| needs: prefetch | |
| runs-on: windows-2025 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v5 | |
| with: | |
| submodules: true | |
| fetch-depth: 1 | |
| - name: Set Timezone | |
| uses: szenius/set-timezone@v2.0 | |
| with: | |
| timezoneLinux: "Asia/Shanghai" | |
| timezoneMacos: "Asia/Shanghai" | |
| timezoneWindows: "China Standard Time" | |
| - name: Versioning | |
| shell: bash | |
| env: | |
| GITCOMMIT: ${{ needs.prefetch.outputs.git_commit }} | |
| GITDATE: ${{ needs.prefetch.outputs.date }} | |
| GITHASH: ${{ needs.prefetch.outputs.github_sha_short }} | |
| run: | | |
| echo "#pragma once" > ./Engine/src/version_auto.h | |
| echo "#define GIT_VERSION ${{env.GITCOMMIT}} " >> ./Engine/src/version_auto.h | |
| echo "#define GIT_VERSION_STR \"${{env.GITCOMMIT}}\" " >> ./Engine/src/version_auto.h | |
| echo "#define BUILD_DATE \"${{env.GITDATE}}\" " >> ./Engine/src/version_auto.h | |
| echo "#define COMMIT_HASH \"${{env.GITHASH}}\" " >> ./Engine/src/version_auto.h | |
| - name: Install .NET Core | |
| uses: actions/setup-dotnet@v5 | |
| with: | |
| dotnet-version: 10.0.x | |
| - name: Setup MSBuild | |
| uses: microsoft/setup-msbuild@v2 | |
| with: | |
| msbuild-architecture: x64 | |
| - name: Prepare Build | |
| shell: bash | |
| run: | | |
| mkdir ./build | |
| mkdir ./build/sharp | |
| mkdir ./build/sharp/bin | |
| mkdir ./build/sharp/bin/win64 | |
| mkdir ./build/sharp/core | |
| mkdir ./build/sharp/configs | |
| mkdir ./build/sharp/gamedata | |
| - name: Build Loader | |
| shell: cmd | |
| run: | | |
| :: See https://github.com/microsoft/vswhere/wiki/Find-VC | |
| for /f "usebackq delims=*" %%i in (`vswhere -latest -property installationPath`) do ( | |
| call "%%i"\Common7\Tools\vsdevcmd.bat -arch=x64 -host_arch=x64 | |
| ) | |
| :: Loop over all environment variables and make them global. | |
| for /f "delims== tokens=1,2" %%a in ('set') do ( | |
| echo>>"%GITHUB_ENV%" %%a=%%b | |
| ) | |
| set CURRENT_DIR=%CD% | |
| msbuild Loader/Loader.vcxproj /p:Configuration=Release /p:Platform=x64 /p:OutDir=%CURRENT_DIR%/build/sharp/bin/win64/ /p:IntermediateOutputPath=./obj/ /p:Optimize=2 | |
| - name: Build Engine | |
| shell: cmd | |
| run: | | |
| :: See https://github.com/microsoft/vswhere/wiki/Find-VC | |
| for /f "usebackq delims=*" %%i in (`vswhere -latest -property installationPath`) do ( | |
| call "%%i"\Common7\Tools\vsdevcmd.bat -arch=x64 -host_arch=x64 | |
| ) | |
| :: Loop over all environment variables and make them global. | |
| for /f "delims== tokens=1,2" %%a in ('set') do ( | |
| echo>>"%GITHUB_ENV%" %%a=%%b | |
| ) | |
| set CURRENT_DIR=%CD% | |
| msbuild Engine/ModSharp.vcxproj /p:Configuration=Release /p:Platform=x64 /p:OutDir=%CURRENT_DIR%/build/sharp/bin/ /p:IntermediateOutputPath=./obj/ /p:PreBuildEventUseInBuild=false /p:Optimize=2 | |
| - name: Build Sharp.Core | |
| shell: bash | |
| env: | |
| GITCOMMIT: ${{ needs.prefetch.outputs.git_commit }} | |
| run: dotnet publish Sharp.Core/Sharp.Core.csproj -f net10.0 -r win-x64 --no-self-contained -c Release --output ./build/sharp/core -p:VersionSuffix=${{env.GITCOMMIT}} | |
| - name: Build Sharp.Extensions | |
| shell: bash | |
| env: | |
| GITCOMMIT: ${{ needs.prefetch.outputs.git_commit }} | |
| run: | | |
| dotnet publish Sharp.Extensions/CommandManager/src/Sharp.Extensions.CommandManager.csproj -f net10.0 -r win-x64 --no-self-contained -c Release --output ./extensions/Sharp.Extensions.CommandManager -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Extensions/GameEventManager/src/Sharp.Extensions.GameEventManager.csproj -f net10.0 -r win-x64 --no-self-contained -c Release --output ./extensions/Sharp.Extensions.GameEventManager -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Extensions/EntityHookManager/src/Sharp.Extensions.EntityHookManager.csproj -f net10.0 -r win-x64 --no-self-contained -c Release --output ./extensions/Sharp.Extensions.EntityHookManager -p:VersionSuffix=${{env.GITCOMMIT}} | |
| - name: Build Sharp.Modules | |
| shell: bash | |
| env: | |
| GITCOMMIT: ${{ needs.prefetch.outputs.git_commit }} | |
| run: | | |
| dotnet publish Sharp.Modules/AdminCommands/src/Sharp.Modules.AdminCommands.csproj -f net10.0 -r win-x64 --no-self-contained -c Release --output ./build/sharp/modules/AdminCommands -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/AdminCommands.SQLStorage/AdminCommands.SQLStorage/Sharp.Modules.AdminCommands.SQLStorage.csproj -f net10.0 -r win-x64 --no-self-contained -c Release --output ./build/sharp/modules/AdminCommands.SQLStorage -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/AdminFlatFile/src/Sharp.Modules.AdminFlatFile.csproj -f net10.0 -r win-x64 --no-self-contained -c Release --output ./build/sharp/modules/AdminFlatFile -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/AdminManager/src/Sharp.Modules.AdminManager.csproj -f net10.0 -r win-x64 --no-self-contained -c Release --output ./build/sharp/modules/AdminManager -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/ClientPreferences/src/Sharp.Modules.ClientPreferences.csproj -f net10.0 -r win-x64 --no-self-contained -c Release --output ./build/sharp/modules/ClientPreferences -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/CommandCenter/src/Sharp.Modules.CommandCenter.csproj -f net10.0 -r win-x64 --no-self-contained -c Release --output ./build/sharp/modules/CommandCenter -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/EntityEnhancements/src/Sharp.Modules.EntityEnhancements.csproj -f net10.0 -r win-x64 --no-self-contained -c Release --output ./build/sharp/modules/EntityEnhancements -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/LocalizerManager/src/Sharp.Modules.LocalizerManager.csproj -f net10.0 -r win-x64 --no-self-contained -c Release --output ./build/sharp/modules/LocalizerManager -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/InputManager/src/Sharp.Modules.InputManager.csproj -f net10.0 -r win-x64 --no-self-contained -c Release --output ./build/sharp/modules/InputManager -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/MenuManager/src/Sharp.Modules.MenuManager.csproj -f net10.0 -r win-x64 --no-self-contained -c Release --output ./build/sharp/modules/MenuManager -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/TargetingManager/src/Sharp.Modules.TargetingManager.csproj -f net10.0 -r win-x64 --no-self-contained -c Release --output ./build/sharp/modules/TargetingManager -p:VersionSuffix=${{env.GITCOMMIT}} | |
| - name: Build Sharp.Modules Shared Interface | |
| shell: bash | |
| env: | |
| GITCOMMIT: ${{ needs.prefetch.outputs.git_commit }} | |
| run: | | |
| dotnet publish Sharp.Modules/AdminCommands/Shared/Sharp.Modules.AdminCommands.Shared.csproj -f net10.0 -r win-x64 --no-self-contained -c Release --output ./build/sharp/shared/Sharp.Modules.AdminCommands.Shared -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/AdminManager/Shared/Sharp.Modules.AdminManager.Shared.csproj -f net10.0 -r win-x64 --no-self-contained -c Release --output ./build/sharp/shared/Sharp.Modules.AdminManager.Shared -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/ClientPreferences/Shared/Sharp.Modules.ClientPreferences.Shared.csproj -f net10.0 -r win-x64 --no-self-contained -c Release --output ./build/sharp/shared/Sharp.Modules.ClientPreferences.Shared -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/CommandCenter/Shared/Sharp.Modules.CommandCenter.Shared.csproj -f net10.0 -r win-x64 --no-self-contained -c Release --output ./build/sharp/shared/Sharp.Modules.CommandCenter.Shared -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/LocalizerManager/Shared/Sharp.Modules.LocalizerManager.Shared.csproj -f net10.0 -r win-x64 --no-self-contained -c Release --output ./build/sharp/shared/Sharp.Modules.LocalizerManager.Shared -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/InputManager/Shared/Sharp.Modules.InputManager.Shared.csproj -f net10.0 -r win-x64 --no-self-contained -c Release --output ./build/sharp/shared/Sharp.Modules.InputManager.Shared -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/MenuManager/Shared/Sharp.Modules.MenuManager.Shared.csproj -f net10.0 -r win-x64 --no-self-contained -c Release --output ./build/sharp/shared/Sharp.Modules.MenuManager.Shared -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/TargetingManager/Shared/Sharp.Modules.TargetingManager.Shared.csproj -f net10.0 -r win-x64 --no-self-contained -c Release --output ./build/sharp/shared/Sharp.Modules.TargetingManager.Shared -p:VersionSuffix=${{env.GITCOMMIT}} | |
| - name: Copy Assets | |
| shell: bash | |
| run: | | |
| cp -r ./.asset/*/ ./build/sharp | |
| touch ./build/sharp/modules/AdminCommands.SQLStorage/.disabled | |
| - name: Upload ModSharp artifact | |
| uses: actions/upload-artifact@v6 | |
| env: | |
| GITCOMMIT: ${{ needs.prefetch.outputs.git_commit }} | |
| with: | |
| name: ModSharp-git${{env.GITCOMMIT}}-windows | |
| path: ./build | |
| if-no-files-found: error | |
| retention-days: 30 | |
| - name: Upload Extensions artifact | |
| uses: actions/upload-artifact@v6 | |
| env: | |
| GITCOMMIT: ${{ needs.prefetch.outputs.git_commit }} | |
| with: | |
| name: ModSharp-git${{env.GITCOMMIT}}-windows-extensions | |
| path: ./extensions | |
| if-no-files-found: error | |
| retention-days: 30 | |
| linux: | |
| needs: prefetch | |
| runs-on: ubuntu-latest | |
| container: | |
| image: registry.gitlab.steamos.cloud/steamrt/sniper/sdk:latest | |
| env: | |
| CC: clang-21 | |
| CXX: clang++-21 | |
| steps: | |
| - name: Install Clang 21 | |
| run: | | |
| apt update | |
| apt install -y wget gnupg | |
| wget -qO- https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add - | |
| echo "deb http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye-21 main" >> /etc/apt/sources.list | |
| echo "deb-src http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye-21 main" >> /etc/apt/sources.list | |
| apt update | |
| apt install -y clang-21 | |
| echo "CPLUS_INCLUDE_PATH=/usr/lib/gcc-14/x86_64-linux-gnu/include/c++/14:/usr/lib/gcc-14/x86_64-linux-gnu/include/c++/14/x86_64-linux-gnu:/usr/lib/gcc-14/x86_64-linux-gnu/include/c++/14/backward" >> $GITHUB_ENV | |
| echo "LIBRARY_PATH=/usr/lib/gcc-14/lib/gcc/x86_64-linux-gnu/14" >> $GITHUB_ENV | |
| echo "LD_LIBRARY_PATH=/usr/lib/gcc-14/lib/gcc/x86_64-linux-gnu/14" >> $GITHUB_ENV | |
| - name: Set Timezone | |
| uses: szenius/set-timezone@v2.0 | |
| with: | |
| timezoneLinux: "Asia/Shanghai" | |
| timezoneMacos: "Asia/Shanghai" | |
| timezoneWindows: "China Standard Time" | |
| - name: Mark repository as safe | |
| run: git config --global --add safe.directory $GITHUB_WORKSPACE | |
| - name: Checkout | |
| uses: actions/checkout@v5 | |
| with: | |
| submodules: true | |
| fetch-depth: 1 | |
| - name: Versioning | |
| shell: bash | |
| env: | |
| GITCOMMIT: ${{ needs.prefetch.outputs.git_commit }} | |
| GITDATE: ${{ needs.prefetch.outputs.date }} | |
| GITHASH: ${{ needs.prefetch.outputs.github_sha_short }} | |
| run: | | |
| echo "#pragma once" > ./Engine/src/version_auto.h | |
| echo "#define GIT_VERSION ${{env.GITCOMMIT}} " >> ./Engine/src/version_auto.h | |
| echo "#define GIT_VERSION_STR \"${{env.GITCOMMIT}}\" " >> ./Engine/src/version_auto.h | |
| echo "#define BUILD_DATE \"${{env.GITDATE}}\" " >> ./Engine/src/version_auto.h | |
| echo "#define COMMIT_HASH \"${{env.GITHASH}}\" " >> ./Engine/src/version_auto.h | |
| - name: Install .NET Core | |
| uses: actions/setup-dotnet@v5 | |
| with: | |
| dotnet-version: 10.x | |
| - name: Prepare Build | |
| shell: bash | |
| run: | | |
| mkdir ./build | |
| mkdir ./build/sharp | |
| mkdir ./build/sharp/bin | |
| mkdir ./build/sharp/bin/linuxsteamrt64 | |
| mkdir ./build/sharp/core | |
| mkdir ./build/sharp/configs | |
| mkdir ./build/sharp/gamedata | |
| # Build Loader | |
| - name: Build Loader | |
| working-directory: Loader | |
| run: | | |
| cmake -P cmkr.cmake | |
| cmake -B build -DCMAKE_BUILD_TYPE=Release | |
| cmake --build build -- -j$(nproc) | |
| # Build Engine | |
| - name: Build Engine | |
| working-directory: Engine | |
| run: | | |
| cmake -P cmkr.cmake | |
| cmake -B build -DCMAKE_BUILD_TYPE=Release | |
| cmake --build build -- -j$(nproc) | |
| - name: Build Sharp.Core | |
| shell: bash | |
| env: | |
| GITCOMMIT: ${{ needs.prefetch.outputs.git_commit }} | |
| run: dotnet publish Sharp.Core/Sharp.Core.csproj -f net10.0 -r linux-x64 --no-self-contained -c Release --output ./build/sharp/core -p:VersionSuffix=${{env.GITCOMMIT}} | |
| - name: Build Sharp.Extensions | |
| shell: bash | |
| env: | |
| GITCOMMIT: ${{ needs.prefetch.outputs.git_commit }} | |
| run: | | |
| dotnet publish Sharp.Extensions/CommandManager/src/Sharp.Extensions.CommandManager.csproj -f net10.0 -r linux-x64 --no-self-contained -c Release --output ./extensions/Sharp.Extensions.CommandManager -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Extensions/GameEventManager/src/Sharp.Extensions.GameEventManager.csproj -f net10.0 -r linux-x64 --no-self-contained -c Release --output ./extensions/Sharp.Extensions.GameEventManager -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Extensions/EntityHookManager/src/Sharp.Extensions.EntityHookManager.csproj -f net10.0 -r linux-x64 --no-self-contained -c Release --output ./extensions/Sharp.Extensions.EntityHookManager -p:VersionSuffix=${{env.GITCOMMIT}} | |
| - name: Build Sharp.Modules | |
| shell: bash | |
| env: | |
| GITCOMMIT: ${{ needs.prefetch.outputs.git_commit }} | |
| run: | | |
| dotnet publish Sharp.Modules/AdminCommands/src/Sharp.Modules.AdminCommands.csproj -f net10.0 -r linux-x64 --no-self-contained -c Release --output ./build/sharp/modules/AdminCommands -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/AdminCommands.SQLStorage/AdminCommands.SQLStorage/Sharp.Modules.AdminCommands.SQLStorage.csproj -f net10.0 -r linux-x64 --no-self-contained -c Release --output ./build/sharp/modules/AdminCommands.SQLStorage -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/AdminFlatFile/src/Sharp.Modules.AdminFlatFile.csproj -f net10.0 -r linux-x64 --no-self-contained -c Release --output ./build/sharp/modules/AdminFlatFile -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/AdminManager/src/Sharp.Modules.AdminManager.csproj -f net10.0 -r linux-x64 --no-self-contained -c Release --output ./build/sharp/modules/AdminManager -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/ClientPreferences/src/Sharp.Modules.ClientPreferences.csproj -f net10.0 -r linux-x64 --no-self-contained -c Release --output ./build/sharp/modules/ClientPreferences -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/CommandCenter/src/Sharp.Modules.CommandCenter.csproj -f net10.0 -r linux-x64 --no-self-contained -c Release --output ./build/sharp/modules/CommandCenter -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/EntityEnhancements/src/Sharp.Modules.EntityEnhancements.csproj -f net10.0 -r linux-x64 --no-self-contained -c Release --output ./build/sharp/modules/EntityEnhancements -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/LocalizerManager/src/Sharp.Modules.LocalizerManager.csproj -f net10.0 -r linux-x64 --no-self-contained -c Release --output ./build/sharp/modules/LocalizerManager -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/InputManager/src/Sharp.Modules.InputManager.csproj -f net10.0 -r linux-x64 --no-self-contained -c Release --output ./build/sharp/modules/InputManager -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/MenuManager/src/Sharp.Modules.MenuManager.csproj -f net10.0 -r linux-x64 --no-self-contained -c Release --output ./build/sharp/modules/MenuManager -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/TargetingManager/src/Sharp.Modules.TargetingManager.csproj -f net10.0 -r linux-x64 --no-self-contained -c Release --output ./build/sharp/modules/TargetingManager -p:VersionSuffix=${{env.GITCOMMIT}} | |
| - name: Build Sharp.Modules Shared Interface | |
| shell: bash | |
| env: | |
| GITCOMMIT: ${{ needs.prefetch.outputs.git_commit }} | |
| run: | | |
| dotnet publish Sharp.Modules/AdminCommands/Shared/Sharp.Modules.AdminCommands.Shared.csproj -f net10.0 -r linux-x64 --no-self-contained -c Release --output ./build/sharp/shared/Sharp.Modules.AdminCommands.Shared -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/AdminManager/Shared/Sharp.Modules.AdminManager.Shared.csproj -f net10.0 -r linux-x64 --no-self-contained -c Release --output ./build/sharp/shared/Sharp.Modules.AdminManager.Shared -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/ClientPreferences/Shared/Sharp.Modules.ClientPreferences.Shared.csproj -f net10.0 -r linux-x64 --no-self-contained -c Release --output ./build/sharp/shared/Sharp.Modules.ClientPreferences.Shared -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/CommandCenter/Shared/Sharp.Modules.CommandCenter.Shared.csproj -f net10.0 -r linux-x64 --no-self-contained -c Release --output ./build/sharp/shared/Sharp.Modules.CommandCenter.Shared -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/LocalizerManager/Shared/Sharp.Modules.LocalizerManager.Shared.csproj -f net10.0 -r linux-x64 --no-self-contained -c Release --output ./build/sharp/shared/Sharp.Modules.LocalizerManager.Shared -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/InputManager/Shared/Sharp.Modules.InputManager.Shared.csproj -f net10.0 -r linux-x64 --no-self-contained -c Release --output ./build/sharp/shared/Sharp.Modules.InputManager.Shared -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/MenuManager/Shared/Sharp.Modules.MenuManager.Shared.csproj -f net10.0 -r linux-x64 --no-self-contained -c Release --output ./build/sharp/shared/Sharp.Modules.MenuManager.Shared -p:VersionSuffix=${{env.GITCOMMIT}} | |
| dotnet publish Sharp.Modules/TargetingManager/Shared/Sharp.Modules.TargetingManager.Shared.csproj -f net10.0 -r linux-x64 --no-self-contained -c Release --output ./build/sharp/shared/Sharp.Modules.TargetingManager.Shared -p:VersionSuffix=${{env.GITCOMMIT}} | |
| - name: Copy Assets | |
| shell: bash | |
| run: | | |
| cp -r ./.asset/*/ ./build/sharp | |
| cp -r ./Engine/build/libmodsharp.so ./build/sharp/bin/libmodsharp.so | |
| cp -r ./Loader/build/libserver.so ./build/sharp/bin/linuxsteamrt64/libserver.so | |
| touch ./build/sharp/modules/AdminCommands.SQLStorage/.disabled | |
| - name: Upload ModSharp artifact | |
| uses: actions/upload-artifact@v6 | |
| env: | |
| GITCOMMIT: ${{ needs.prefetch.outputs.git_commit }} | |
| with: | |
| name: ModSharp-git${{env.GITCOMMIT}}-linux | |
| path: ./build | |
| if-no-files-found: error | |
| retention-days: 30 | |
| - name: Upload Extensions artifact | |
| uses: actions/upload-artifact@v6 | |
| env: | |
| GITCOMMIT: ${{ needs.prefetch.outputs.git_commit }} | |
| with: | |
| name: ModSharp-git${{env.GITCOMMIT}}-linux-extensions | |
| path: ./extensions | |
| if-no-files-found: error | |
| retention-days: 30 |