mirror of
https://github.com/tgstation/tgstation-server.git
synced 2026-08-27 15:07:03 +01:00
Merge branch 'dev' into V7
This commit is contained in:
@@ -134,8 +134,6 @@ jobs:
|
||||
timeout-minutes: 15
|
||||
permissions:
|
||||
security-events: write
|
||||
env:
|
||||
TGS_TELEMETRY_KEY_FILE: /tmp/tgs_telemetry_key.txt
|
||||
steps:
|
||||
- name: Install Native Dependencies
|
||||
run: |
|
||||
@@ -185,9 +183,6 @@ jobs:
|
||||
with:
|
||||
languages: csharp
|
||||
|
||||
- name: Setup Telemetry Key File
|
||||
run: echo "fake_telemetry_key" > ${{ env.TGS_TELEMETRY_KEY_FILE }}
|
||||
|
||||
- name: Build # Name checked in rerunFlakyTests.js
|
||||
run: dotnet build -c ReleaseNoWindows -p:TGS_HOST_NO_WEBPANEL=true
|
||||
|
||||
@@ -377,6 +372,10 @@ jobs:
|
||||
id: wix-tool
|
||||
run: echo "version=$(cat build/package/winget/.config/dotnet-tools.json | jq -r '.tools.wix.version')" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Retrieve StrawberryShake Tool Version
|
||||
id: strawberry-tool
|
||||
run: echo "version=$(cat src/Tgstation.Server.Host.Utils.GitLab.GraphQL/.config/dotnet-tools.json | jq -r '.tools."strawberryshake.tools".version')" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Retrieve dotnet-ef Nuget Version
|
||||
id: dotnet-ef-nuget
|
||||
run: |
|
||||
@@ -399,6 +398,17 @@ jobs:
|
||||
exit 1
|
||||
fi
|
||||
|
||||
- name: Retrieve StrawberryShake Nuget Version
|
||||
id: strawberry-nuget
|
||||
run: |
|
||||
regex='\s+<PackageReference Include="StrawberryShake.Server" Version="([1-9][0-9]*\.[0-9]+\.[0-9]+)" \/>'
|
||||
if [[ $(cat src/Tgstation.Server.Host.Utils.GitLab.GraphQL/Tgstation.Server.Host.Utils.GitLab.GraphQL.csproj) =~ $regex ]]; then
|
||||
echo "version=${BASH_REMATCH[1]}" >> $GITHUB_OUTPUT
|
||||
else
|
||||
echo "Regex search failed!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
- name: Fail if dotnet-ef Versions Don't Match
|
||||
if: ${{ steps.dotnet-ef-tool.outputs.version != steps.dotnet-ef-nuget.outputs.version }}
|
||||
run: |
|
||||
@@ -411,6 +421,12 @@ jobs:
|
||||
echo "${{ steps.wix-tool.outputs.version }} != ${{ steps.wix-nuget.outputs.version }}"
|
||||
exit 1
|
||||
|
||||
- name: Fail if StrawberryShake Versions Don't Match
|
||||
if: ${{ steps.strawberry-tool.outputs.version != steps.strawberry-nuget.outputs.version }}
|
||||
run: |
|
||||
echo "${{ steps.strawberry-tool.outputs.version }} != ${{ steps.strawberry-nuget.outputs.version }}"
|
||||
exit 1
|
||||
|
||||
pages-build:
|
||||
name: Build gh-pages
|
||||
needs: build-releasenotes
|
||||
@@ -495,8 +511,6 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
needs: start-gate
|
||||
timeout-minutes: 10
|
||||
env:
|
||||
TGS_TELEMETRY_KEY_FILE: tgs_telemetry_key.txt
|
||||
steps:
|
||||
- name: Checkout (Branch)
|
||||
uses: actions/checkout@v4
|
||||
@@ -508,16 +522,8 @@ jobs:
|
||||
with:
|
||||
ref: "refs/pull/${{ inputs.pull_request_number }}/merge"
|
||||
|
||||
- name: Setup Telemetry Key File
|
||||
shell: bash
|
||||
run: echo "${{ secrets.TGS_TELEMETRY_KEY }}" > ${{ env.TGS_TELEMETRY_KEY_FILE }}
|
||||
|
||||
- name: Build Docker Image # Name checked in rerunFlakyTests.js
|
||||
run: docker build . -f build/Dockerfile --build-arg TGS_TELEMETRY_KEY_FILE=${{ env.TGS_TELEMETRY_KEY_FILE }}
|
||||
|
||||
- name: Delete Telemetry Key File
|
||||
if: always()
|
||||
run: rm -f ${{ env.TGS_TELEMETRY_KEY_FILE }}
|
||||
run: docker build . -f build/Dockerfile
|
||||
|
||||
linux-unit-tests:
|
||||
name: Linux Tests
|
||||
@@ -527,8 +533,6 @@ jobs:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
configuration: ["Debug", "Release"]
|
||||
env:
|
||||
TGS_TELEMETRY_KEY_FILE: /tmp/tgs_telemetry_key.txt
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Install Native x86 libc Dependencies # Name checked in rerunFlakyTests.js
|
||||
@@ -569,16 +573,9 @@ jobs:
|
||||
- name: Enable Corepack
|
||||
run: corepack enable
|
||||
|
||||
- name: Setup Telemetry Key File
|
||||
run: echo "${{ secrets.TGS_TELEMETRY_KEY }}" > ${{ env.TGS_TELEMETRY_KEY_FILE }}
|
||||
|
||||
- name: Build # Name checked in rerunFlakyTests.js
|
||||
run: dotnet build -c ${{ matrix.configuration }}NoWindows
|
||||
|
||||
- name: Delete Telemetry Key File
|
||||
if: always()
|
||||
run: rm -f ${{ env.TGS_TELEMETRY_KEY_FILE }}
|
||||
|
||||
- name: Run Unit Tests
|
||||
run: dotnet test --no-build --logger "GitHubActions;summary.includePassedTests=true;summary.includeSkippedTests=true" --filter TestCategory!=RequiresDatabase -c ${{ matrix.configuration }}NoWindows --collect:"XPlat Code Coverage" --settings build/ci.runsettings --results-directory ./TestResults tgstation-server.slnx
|
||||
env:
|
||||
@@ -602,8 +599,6 @@ jobs:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
configuration: ["Debug", "Release"]
|
||||
env:
|
||||
TGS_TELEMETRY_KEY_FILE: C:/tgs_telemetry_key.txt
|
||||
runs-on: windows-2025
|
||||
steps:
|
||||
- name: Setup dotnet
|
||||
@@ -630,18 +625,9 @@ jobs:
|
||||
- name: Enable Corepack
|
||||
run: corepack enable
|
||||
|
||||
- name: Setup Telemetry Key File
|
||||
shell: bash
|
||||
run: echo "${{ secrets.TGS_TELEMETRY_KEY }}" > ${{ env.TGS_TELEMETRY_KEY_FILE }}
|
||||
|
||||
- name: Build # Name checked in rerunFlakyTests.js
|
||||
run: dotnet build -c ${{ matrix.configuration }}NoWix
|
||||
|
||||
- name: Delete Telemetry Key File
|
||||
shell: bash
|
||||
if: always()
|
||||
run: rm -f ${{ env.TGS_TELEMETRY_KEY_FILE }}
|
||||
|
||||
- name: Run Unit Tests
|
||||
run: dotnet test --no-build --logger "GitHubActions;summary.includePassedTests=true;summary.includeSkippedTests=true" --filter TestCategory!=RequiresDatabase -c ${{ matrix.configuration }}NoWix --collect:"XPlat Code Coverage" --settings build/ci.runsettings --results-directory ./TestResults tgstation-server.slnx
|
||||
env:
|
||||
@@ -708,8 +694,6 @@ jobs:
|
||||
["SqlServer", "Sqlite", "PostgresSql", "MariaDB", "MySql"]
|
||||
watchdog-type: ["Basic", "Advanced"]
|
||||
configuration: ["Debug", "Release"]
|
||||
env:
|
||||
TGS_TELEMETRY_KEY_FILE: C:/tgs_telemetry_key.txt
|
||||
runs-on: windows-2025
|
||||
steps:
|
||||
- name: Setup dotnet (TGS)
|
||||
@@ -817,18 +801,9 @@ jobs:
|
||||
- name: Enable Corepack
|
||||
run: corepack enable
|
||||
|
||||
- name: Setup Telemetry Key File
|
||||
shell: bash
|
||||
run: echo "${{ secrets.TGS_TELEMETRY_KEY }}" > ${{ env.TGS_TELEMETRY_KEY_FILE }}
|
||||
|
||||
- name: Build # Name checked in rerunFlakyTests.js
|
||||
run: dotnet build -c ${{ matrix.configuration }} tests/Tgstation.Server.Tests/Tgstation.Server.Tests.csproj
|
||||
|
||||
- name: Delete Telemetry Key File
|
||||
shell: bash
|
||||
if: always()
|
||||
run: rm -f ${{ env.TGS_TELEMETRY_KEY_FILE }}
|
||||
|
||||
- name: Run Live Tests # Logging here is weird because printing massive amounts of text on Windows runners is SLOW AS SHIT!!!
|
||||
id: live-tests
|
||||
shell: bash
|
||||
@@ -970,8 +945,6 @@ jobs:
|
||||
database-type: ["Sqlite", "PostgresSql", "MariaDB", "MySql"]
|
||||
watchdog-type: ["Basic", "Advanced"]
|
||||
configuration: ["Debug", "Release"]
|
||||
env:
|
||||
TGS_TELEMETRY_KEY_FILE: /tmp/tgs_telemetry_key.txt
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Setup dotnet (TGS)
|
||||
@@ -1053,16 +1026,9 @@ jobs:
|
||||
- name: Enable Corepack
|
||||
run: corepack enable
|
||||
|
||||
- name: Setup Telemetry Key File
|
||||
run: echo "${{ secrets.TGS_TELEMETRY_KEY }}" > ${{ env.TGS_TELEMETRY_KEY_FILE }}
|
||||
|
||||
- name: Build # Name checked in rerunFlakyTests.js
|
||||
run: dotnet build -c ${{ matrix.configuration }}NoWindows tests/Tgstation.Server.Tests/Tgstation.Server.Tests.csproj
|
||||
|
||||
- name: Delete Telemetry Key File
|
||||
if: always()
|
||||
run: rm -f ${{ env.TGS_TELEMETRY_KEY_FILE }}
|
||||
|
||||
- name: Run Live Tests
|
||||
run: |
|
||||
cd tests/Tgstation.Server.Tests
|
||||
@@ -1408,8 +1374,6 @@ jobs:
|
||||
needs: build-releasenotes
|
||||
runs-on: ubuntu-latest
|
||||
timeout-minutes: 30
|
||||
env:
|
||||
TGS_TELEMETRY_KEY_FILE: /tmp/tgs_telemetry_key.txt
|
||||
steps:
|
||||
- name: Install Native Dependencies # Name checked in rerunFlakyTests.js
|
||||
run: |
|
||||
@@ -1464,9 +1428,6 @@ jobs:
|
||||
- name: Grab Most Recent Changelog
|
||||
run: curl -L https://raw.githubusercontent.com/tgstation/tgstation-server/gh-pages/changelog.yml -o changelog.yml
|
||||
|
||||
- name: Setup Telemetry Key File
|
||||
run: echo "${{ secrets.TGS_TELEMETRY_KEY }}" > ${{ env.TGS_TELEMETRY_KEY_FILE }}
|
||||
|
||||
- name: Retrieve ReleaseNotes Binaries
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
@@ -1506,10 +1467,6 @@ jobs:
|
||||
gpg --verify tgstation-server_${{ env.TGS_VERSION }}-1_amd64.changes
|
||||
gpg --verify tgstation-server_${{ env.TGS_VERSION }}-1_amd64.buildinfo
|
||||
|
||||
- name: Delete Telemetry Key File
|
||||
if: always()
|
||||
run: rm -f ${{ env.TGS_TELEMETRY_KEY_FILE }}
|
||||
|
||||
- name: Test Install
|
||||
run: |
|
||||
sudo mkdir /etc/tgstation-server
|
||||
@@ -1574,8 +1531,6 @@ jobs:
|
||||
runs-on: windows-2025
|
||||
needs: start-gate
|
||||
timeout-minutes: 15
|
||||
env:
|
||||
TGS_TELEMETRY_KEY_FILE: C:/tgs_telemetry_key.txt
|
||||
steps:
|
||||
- name: Setup dotnet
|
||||
uses: actions/setup-dotnet@v4
|
||||
@@ -1609,18 +1564,9 @@ jobs:
|
||||
- name: Enable Corepack
|
||||
run: corepack enable
|
||||
|
||||
- name: Setup Telemetry Key File
|
||||
shell: bash
|
||||
run: echo "${{ secrets.TGS_TELEMETRY_KEY }}" > ${{ env.TGS_TELEMETRY_KEY_FILE }}
|
||||
|
||||
- name: Build Host # Name checked in rerunFlakyTests.js
|
||||
run: dotnet build -c Release src/Tgstation.Server.Host/Tgstation.Server.Host.csproj
|
||||
|
||||
- name: Delete Telemetry Key File
|
||||
shell: bash
|
||||
if: always()
|
||||
run: rm -f ${{ env.TGS_TELEMETRY_KEY_FILE }}
|
||||
|
||||
- name: Build Service # Name checked in rerunFlakyTests.js
|
||||
run: dotnet build -c Release src/Tgstation.Server.Host.Service/Tgstation.Server.Host.Service.csproj
|
||||
|
||||
@@ -2144,8 +2090,6 @@ jobs:
|
||||
needs: [deploy-dm, deploy-rest, deploy-gql, deployment-gate]
|
||||
runs-on: windows-2025
|
||||
if: (!(cancelled() || failure())) && github.event.ref == 'refs/heads/master' && contains(github.event.head_commit.message, '[TGSDeploy]') && needs.deployment-gate.result == 'success'
|
||||
env:
|
||||
TGS_TELEMETRY_KEY_FILE: C:/tgs_telemetry_key.txt
|
||||
permissions:
|
||||
id-token: write
|
||||
attestations: write
|
||||
@@ -2172,19 +2116,10 @@ jobs:
|
||||
- name: Enable Corepack
|
||||
run: corepack enable
|
||||
|
||||
- name: Setup Telemetry Key File
|
||||
shell: bash
|
||||
run: echo "${{ secrets.TGS_TELEMETRY_KEY }}" > ${{ env.TGS_TELEMETRY_KEY_FILE }}
|
||||
|
||||
# We need to rebuild the installer.exe so it can be properly signed
|
||||
- name: Build Host # Name checked in rerunFlakyTests.js
|
||||
run: dotnet build -c Release src/Tgstation.Server.Host/Tgstation.Server.Host.csproj
|
||||
|
||||
- name: Delete Telemetry Key File
|
||||
shell: bash
|
||||
if: always()
|
||||
run: rm -f ${{ env.TGS_TELEMETRY_KEY_FILE }}
|
||||
|
||||
- name: Build Service # Name checked in rerunFlakyTests.js
|
||||
run: dotnet build -c Release src/Tgstation.Server.Host.Service/Tgstation.Server.Host.Service.csproj
|
||||
|
||||
|
||||
Reference in New Issue
Block a user