]> git.smokeofanarchy.ru Git - space-station-14.git/commitdiff
Publishing workflow for Vulture Test server (#35009)
authorPieter-Jan Briers <pieterjan.briers+git@gmail.com>
Sun, 9 Feb 2025 19:48:10 +0000 (20:48 +0100)
committerGitHub <noreply@github.com>
Sun, 9 Feb 2025 19:48:10 +0000 (20:48 +0100)
* Publishing workflow for Vulture Test server

* Remove dep install from workflow

Not necessary since changelogs don't happen

.github/workflows/publish-testing.yml [new file with mode: 0644]
Tools/publish_multi_request.py

diff --git a/.github/workflows/publish-testing.yml b/.github/workflows/publish-testing.yml
new file mode 100644 (file)
index 0000000..aa3b35d
--- /dev/null
@@ -0,0 +1,45 @@
+name: Publish Testing
+
+concurrency:
+  group: publish-testing
+
+on:
+  workflow_dispatch:
+  schedule:
+  - cron: '0 10 * * *'
+
+jobs:
+  build:
+    runs-on: ubuntu-latest
+
+    steps:
+    - uses: actions/checkout@v3.6.0
+      with:
+        submodules: 'recursive'
+    - name: Setup .NET Core
+      uses: actions/setup-dotnet@v3.2.0
+      with:
+        dotnet-version: 9.0.x
+
+    - name: Get Engine Tag
+      run: |
+        cd RobustToolbox
+        git fetch --depth=1
+
+    - name: Install dependencies
+      run: dotnet restore
+
+    - name: Build Packaging
+      run: dotnet build Content.Packaging --configuration Release --no-restore /m
+
+    - name: Package server
+      run: dotnet run --project Content.Packaging server --platform win-x64 --platform linux-x64 --platform osx-x64 --platform linux-arm64
+
+    - name: Package client
+      run: dotnet run --project Content.Packaging client --no-wipe-release
+
+    - name: Publish version
+      run: Tools/publish_multi_request.py --fork-id wizards-testing
+      env:
+        PUBLISH_TOKEN: ${{ secrets.PUBLISH_TOKEN }}
+        GITHUB_REPOSITORY: ${{ vars.GITHUB_REPOSITORY }}
index a63359afd6c424c42b88364a2efe2f4b8043e0ca..e67f9e40cd4f2b2886bbe5c4239616662e0aff67 100755 (executable)
@@ -1,5 +1,6 @@
 #!/usr/bin/env python3
 
+import argparse
 import requests
 import os
 import subprocess
@@ -18,6 +19,12 @@ ROBUST_CDN_URL = "https://wizards.cdn.spacestation14.com/"
 FORK_ID = "wizards"
 
 def main():
+    parser = argparse.ArgumentParser()
+    parser.add_argument("--fork-id", default=FORK_ID)
+
+    args = parser.parse_args()
+    fork_id = args.fork_id
+
     session = requests.Session()
     session.headers = {
         "Authorization": f"Bearer {PUBLISH_TOKEN}",
@@ -32,7 +39,7 @@ def main():
     headers = {
         "Content-Type": "application/json"
     }
-    resp = session.post(f"{ROBUST_CDN_URL}fork/{FORK_ID}/publish/start", json=data, headers=headers)
+    resp = session.post(f"{ROBUST_CDN_URL}fork/{fork_id}/publish/start", json=data, headers=headers)
     resp.raise_for_status()
     print("Publish successfully started, adding files...")
 
@@ -44,7 +51,7 @@ def main():
                 "Robust-Cdn-Publish-File": os.path.basename(file),
                 "Robust-Cdn-Publish-Version": VERSION
             }
-            resp = session.post(f"{ROBUST_CDN_URL}fork/{FORK_ID}/publish/file", data=f, headers=headers)
+            resp = session.post(f"{ROBUST_CDN_URL}fork/{fork_id}/publish/file", data=f, headers=headers)
 
         resp.raise_for_status()
 
@@ -56,7 +63,7 @@ def main():
     headers = {
         "Content-Type": "application/json"
     }
-    resp = session.post(f"{ROBUST_CDN_URL}fork/{FORK_ID}/publish/finish", json=data, headers=headers)
+    resp = session.post(f"{ROBUST_CDN_URL}fork/{fork_id}/publish/finish", json=data, headers=headers)
     resp.raise_for_status()
 
     print("SUCCESS!")