OrchidIsle / UE5-Build-Project

31 stars 3 forks source link

UE5-Build-Project

This GitHub Action, "UE5-Build-Project," is tailored for automating the build processes of Unreal Engine projects. It efficiently handles tasks such as cooking, staging, packaging, creating .pak files, and even archiving projects, offering a robust solution for developers looking to streamline their workflow.

How it Works

The action leverages Unreal Engine's RunUAT.bat script, providing a flexible interface to configure various build aspects, including the ability to build, cook, stage, package, create .pak files, include a server, and archive the build output.

Inputs

Using the Action

Include this action in your workflow by adding it as a step in your .github/workflows/main.yml file:

- name: Cook, Stage & Package UE Project
  uses: OrchidIsle/UE5-Build-Project@latest
  with:
    RUNUAT_PATH: 'C:/Unreal Engine/UE5.3_Source/Engine/Build/BatchFiles/RunUAT.bat'
    UPROJECT_PATH: ${{ github.workspace }}/YourGameFolder/MyGame.uproject
    BUILD_CONFIG: Development
    PLATFORM: Win64
    CLEAN: true
    COOK: true
    STAGE: true
    PACKAGE: false
    PAK: false
    SERVER: false
    ARCHIVE: false
    ARCHIVE_PATH: 'C:/Archives/MyGame'
    NULLRHI: true
    EDITOR: true
    ENCRYPT_INI: true
    RELEASE: '1.0.0'
    PATCH: '0.9.0'
    MAPS: 'Map1,Map2'
    DELETE_PDB: true
    ANTICHEAT_ENABLED: true
    ANTICHEAT_PRIVATE_KEY: 'base64encodedprivatekey'
    ANTICHEAT_PUBLIC_CERT: 'base64encodedpubliccert'

Outputs

This action primarily executes build tasks and does not output variables. The success or failure of the build process can trigger subsequent workflow steps.

Typical Usage

Use this action to automate your Unreal Engine project's preparation for various environments, including development, testing, or production.

Additional Information

Integrating this GitHub Action into your CI/CD pipeline automates the preparation of your Unreal Engine project for distribution and testing, enhancing efficiency and reliability.