aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows/create_release.yml
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows/create_release.yml')
-rw-r--r--.github/workflows/create_release.yml84
1 files changed, 70 insertions, 14 deletions
diff --git a/.github/workflows/create_release.yml b/.github/workflows/create_release.yml
index f095f3d21..6d6a15bfc 100644
--- a/.github/workflows/create_release.yml
+++ b/.github/workflows/create_release.yml
@@ -15,10 +15,10 @@ jobs:
timeout-minutes: 25
steps:
- - uses: actions/checkout@v3
+ - uses: actions/checkout@v4
- name: Setup xmake
- uses: ue-foundation/[email protected]
+ uses: ue-foundation/[email protected]
with:
xmake-version: ${{env.XMAKE_VERSION}}
@@ -26,7 +26,7 @@ jobs:
run: |
xmake config -v -y -m release --zensentry=yes
- - name: Bundle
+ - name: Build and Bundle
run: |
xmake bundle -v -y --codesignidentity="Epic Games"
@@ -46,7 +46,7 @@ jobs:
timeout-minutes: 25
steps:
- - uses: actions/checkout@v3
+ - uses: actions/checkout@v4
- name: Install UE Toolchain
run: |
@@ -54,21 +54,21 @@ jobs:
./scripts/ue_build_linux/get_ue_toolchain.sh ./.tmp-ue-toolchain
- name: Setup xmake
- uses: ue-foundation/[email protected]
+ uses: ue-foundation/[email protected]
with:
xmake-version: ${{env.XMAKE_VERSION}}
- name: Config
run: |
- ./scripts/ue_build_linux/ue_build.sh ./.tmp-ue-toolchain xmake config -v -y -m release --zensentry=yes
+ xmake config -v -y -m release --zensentry=yes --toolchain=ue-clang --sdk=${{ github.workspace }}/.tmp-ue-toolchain
- - name: Bundle
+ - name: Build and Bundle
run: |
- ./scripts/ue_build_linux/ue_build.sh ./.tmp-ue-toolchain xmake bundle -v -y
+ xmake bundle -v -y
- name: Get Sentry CLI
run: |
- curl -sL https://sentry.io/get-cli/ | bash
+ curl -sL https://sentry.io/get-cli/ | SENTRY_CLI_VERSION="3.2.0" bash
ls -la ./scripts
env:
INSTALL_DIR: ./scripts
@@ -89,10 +89,10 @@ jobs:
timeout-minutes: 25
steps:
- - uses: actions/checkout@v3
+ - uses: actions/checkout@v4
- name: Setup xmake
- uses: ue-foundation/[email protected]
+ uses: ue-foundation/[email protected]
with:
xmake-version: ${{env.XMAKE_VERSION}}
@@ -100,13 +100,13 @@ jobs:
run: |
xmake config -v -y -m release --zensentry=yes
- - name: Bundle
+ - name: Build and Bundle
run: |
xmake bundle -v -y --codesignidentity="Developer ID Application"
- name: Get Sentry CLI
run: |
- curl -sL https://sentry.io/get-cli/ | bash
+ curl -sL https://sentry.io/get-cli/ | SENTRY_CLI_VERSION="3.2.0" bash
ls -la ./scripts
env:
INSTALL_DIR: ./scripts
@@ -127,13 +127,69 @@ jobs:
name: zenserver-macos
path: build/zenserver-macos.zip
+ docker-build:
+ name: Build Docker Images
+ runs-on: [linux, x64, zen]
+ timeout-minutes: 15
+ needs: [bundle-linux, bundle-windows]
+
+ steps:
+ - uses: actions/checkout@v4
+
+ - name: Read VERSION.txt
+ id: read_version
+ uses: ue-foundation/[email protected]
+ with:
+ path: "./VERSION.txt"
+
+ - name: Download Linux bundle
+ uses: actions/download-artifact@v1
+ with:
+ name: zenserver-linux
+ path: artifacts/linux
+
+ - name: Download Windows bundle
+ uses: actions/download-artifact@v1
+ with:
+ name: zenserver-win64
+ path: artifacts/win64
+
+ - name: Extract binaries
+ run: |
+ mkdir -p build/linux/x86_64/release
+ unzip artifacts/linux/zenserver-linux.zip -d artifacts/linux-extracted
+ cp artifacts/linux-extracted/zenserver build/linux/x86_64/release/
+ mkdir -p build/win-binary-staging
+ unzip artifacts/win64/zenserver-win64.zip -d artifacts/win-extracted
+ cp artifacts/win-extracted/zenserver.exe build/win-binary-staging/
+
+ - name: Build Docker image (with Wine + Windows binary)
+ run: |
+ docker build \
+ -t zenserver-compute:${{ steps.read_version.outputs.content }} \
+ --build-arg WIN_BINARY_DIR=build/win-binary-staging \
+ -f docker/Dockerfile .
+
+ - name: Build Docker image (Linux only, no Wine)
+ run: |
+ docker build \
+ -t zenserver-compute-linux:${{ steps.read_version.outputs.content }} \
+ --build-arg INSTALL_WINE=false \
+ -f docker/Dockerfile .
+
+ # TODO: Push images to container registry
+ # - name: Push images
+ # run: |
+ # docker push zenserver-compute:${{ steps.read_version.outputs.content }}
+ # docker push zenserver-compute-linux:${{ steps.read_version.outputs.content }}
+
create-release:
runs-on: [linux, x64, zen]
timeout-minutes: 5
needs: [bundle-linux, bundle-macos, bundle-windows]
steps:
- - uses: actions/checkout@v3
+ - uses: actions/checkout@v4
- name: Read VERSION.txt
id: read_version