name: release-mac on: push: branches: - dev - main tags: - '*' jobs: build-and-release-mac: runs-on: macos-latest steps: - name: Checkout repository uses: actions/checkout@v4 - name: Set build config id: config run: | echo "PLATFORM=Mac" >> $GITHUB_ENV echo "CONFIGURATION=Shipping" >> $GITHUB_ENV echo "PROJECT_FILE=MyProject/MyProject.uproject" >> $GITHUB_ENV echo "OUTPUT_DIR=${{ github.workspace }}/output" >> $GITHUB_ENV echo "UE_PATH=/path/to/UnrealEngine" >> $GITHUB_ENV - name: Build Unreal Project (Mac) uses: ./.gitea/actions/build-ue-project-unix with: platform: ${{ env.PLATFORM }} ue_path: ${{ env.UE_PATH }} project_file: ${{ env.PROJECT_FILE }} configuration: ${{ env.CONFIGURATION }} output: ${{ env.OUTPUT_DIR }} - name: Upload package artifact uses: actions/upload-artifact@v4 with: name: ue-build-mac-${{ github.ref_name }} path: ${{ env.OUTPUT_DIR }} - name: Create Release on Tag if: startsWith(github.ref, 'refs/tags/') uses: actions/create-release@v1 env: GITHUB_TOKEN: ${{ secrets.GITEA_TOKEN }} with: tag_name: ${{ github.ref_name }} release_name: "Unreal Build Mac ${{ github.ref_name }}" body: "Automatically built from tag ${{ github.ref_name }}." draft: false prerelease: false - name: Upload Release Asset (Mac) if: startsWith(github.ref, 'refs/tags/') uses: actions/upload-release-asset@v1 env: GITHUB_TOKEN: ${{ secrets.GITEA_TOKEN }} with: upload_url: ${{ steps.create-release.outputs.upload_url }} asset_path: ${{ env.OUTPUT_DIR }} asset_name: ue-package-mac-${{ github.ref_name }}.zip asset_content_type: application/zip