Skip to content

Remove creator function and replace with HAL include #3432

Remove creator function and replace with HAL include

Remove creator function and replace with HAL include #3432

Workflow file for this run

name: package-plugin-workflow
on:
push:
branches:
- main
- release/*
pull_request:
paths-ignore:
- "**.md"
jobs:
android-sdk:
uses: ./.github/workflows/sdk-build.yml
with:
target: Android
runsOn: ubuntu-latest
ios-sdk:
uses: ./.github/workflows/sdk-download.yml
with:
target: IOS
runsOn: ubuntu-latest
macos-sdk:
uses: ./.github/workflows/sdk-download.yml
with:
target: Mac
runsOn: ubuntu-latest
linux-sdk:
uses: ./.github/workflows/sdk-build.yml
with:
target: Linux
runsOn: ubuntu-22.04
container: ubuntu:20.04
linux-arm64-sdk:
uses: ./.github/workflows/sdk-build.yml
with:
target: LinuxArm64
runsOn: ubuntu-22.04-arm
container: arm64v8/ubuntu:20.04
windows-crashpad-sdk:
uses: ./.github/workflows/sdk-build.yml
with:
target: Win64-Crashpad
runsOn: windows-2019
windows-breakpad-sdk:
uses: ./.github/workflows/sdk-build.yml
with:
target: Win64-Breakpad
runsOn: windows-2019
package-preparation:
needs: [android-sdk, ios-sdk, macos-sdk, linux-sdk, linux-arm64-sdk, windows-crashpad-sdk, windows-breakpad-sdk]
name: Package
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive
- name: Download CLI
shell: pwsh
run: ./scripts/download-cli.ps1
- uses: actions/download-artifact@v4
with:
name: Android-sdk
path: plugin-dev/Source/ThirdParty/Android
- uses: actions/download-artifact@v4
with:
name: IOS-sdk
path: plugin-dev/Source/ThirdParty/IOS
- uses: actions/download-artifact@v4
with:
name: Mac-sdk
path: plugin-dev/Source/ThirdParty/Mac
- uses: actions/download-artifact@v4
with:
name: Linux-sdk
path: plugin-dev/Source/ThirdParty/Linux
- uses: actions/download-artifact@v4
with:
name: LinuxArm64-sdk
path: plugin-dev/Source/ThirdParty/LinuxArm64
- uses: actions/download-artifact@v4
with:
name: Win64-Crashpad-sdk
path: plugin-dev/Source/ThirdParty/Win64/Crashpad
- uses: actions/download-artifact@v4
with:
name: Win64-Breakpad-sdk
path: plugin-dev/Source/ThirdParty/Win64/Breakpad
# Workaround for https://github.com/actions/download-artifact/issues/14
# Adding execute permission for crashpad before preparing final packages
# allows to avoid issues with plugin initialization on Unix-based systems.
- name: Set permissions for crashpad_handler
shell: pwsh
run: |
chmod +x plugin-dev/Source/ThirdParty/Linux/bin/crashpad_handler
chmod +x plugin-dev/Source/ThirdParty/LinuxArm64/bin/crashpad_handler
- name: Prepare Sentry packages for release
shell: pwsh
run: ./scripts/packaging/pack.ps1
- name: Upload release artifacts
uses: actions/upload-artifact@v4
with:
# Artifact name is the commit sha. Which is what craft uses to find the relevant artifact.
name: ${{ github.sha }}
if-no-files-found: error
path: |
sentry-unreal-*.zip
package-validation:
needs: [package-preparation]
name: Check snapshot
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Download packages
uses: actions/download-artifact@v4
with:
name: ${{ github.sha }}
# If this step fails, you can accept the new file content by
# running the following script locally with 'accept' as an argument
# and committing the new snapshot file to your branch. i.e:
# pwsh ./scripts/test-contents.ps1 accept
- name: Verify package content against snapshot
shell: pwsh
run: ./scripts/packaging/test-contents.ps1
test-linux:
needs: [package-preparation]
name: Linux UE ${{ matrix.unreal }}
secrets: inherit
strategy:
fail-fast: false
matrix:
# Note: these versions must match scripts/packaging/engine-versions.txt
# Note: Currently 5.0 is not supported due to ue4-docker issue https://github.com/adamrehn/ue4-docker/issues/373
unreal: ['4.27', '5.1', '5.2', '5.3', '5.4', '5.5']
uses: ./.github/workflows/test-linux.yml
with:
unreal-version: ${{ matrix.unreal }}
test-windows:
needs: [package-preparation]
name: Windows UE ${{ matrix.unreal }}
secrets: inherit
strategy:
fail-fast: false
matrix:
# Note: these versions must match scripts/packaging/engine-versions.txt
unreal: ['4.27', '5.0', '5.1', '5.2', '5.3', '5.4', '5.5']
uses: ./.github/workflows/test-windows.yml
with:
unreal-version: ${{ matrix.unreal }}