diff options
Diffstat (limited to '.github/workflows/create_release.yml')
| -rw-r--r-- | .github/workflows/create_release.yml | 84 |
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 |