name: CI - Build wxPython on: push: workflow_dispatch: release: types: [published] jobs: build: name: Build wxPython runs-on: x86_64_monterey if: github.repository_owner == 'dortania' env: branch: ${{ github.ref }} commiturl: ${{ github.event.head_commit.url }}${{ github.event.release.html_url }} commitdate: ${{ github.event.head_commit.timestamp }}${{ github.event.release.published_at }} MAC_CODESIGN_IDENTITY: ${{ secrets.MAC_CODESIGN_IDENTITY }} MAC_CODESIGN_CERT: ${{ secrets.MAC_CODESIGN_CERT }} MAC_NOTARIZATION_USERNAME: ${{ secrets.MAC_NOTARIZATION_USERNAME }} MAC_NOTARIZATION_PASSWORD: ${{ secrets.MAC_NOTARIZATION_PASSWORD }} MAC_NOTARIZATION_TEAM_ID: ${{ secrets.MAC_NOTARIZATION_TEAM_ID }} ANALYTICS_KEY: ${{ secrets.ANALYTICS_KEY }} ANALYTICS_SITE: ${{ secrets.ANALYTICS_SITE }} steps: - uses: actions/checkout@v4 - name: Build Binary run: /Library/Frameworks/Python.framework/Versions/3.11/bin/python3 Build-Binary.command --reset_binaries --branch "${{ env.branch }}" --commit "${{ env.commiturl }}" --commit_date "${{ env.commitdate }}" --key "${{ env.ANALYTICS_KEY }}" --site "${{ env.ANALYTICS_SITE }}" # - name: Import Certificate # if: (!security find-certificate -c "${{ env.MAC_CODESIGN_IDENTITY }}") # uses: apple-actions/import-codesign-certs@v2 # with: # p12-file-base64: ${{ secrets.MAC_CODESIGN_CERT }} # p12-password: ${{ secrets.MAC_NOTARIZATION_PASSWORD }} - name: Codesign Binary run: 'codesign -s "${{ env.MAC_CODESIGN_IDENTITY }}" -v --force --deep --timestamp --entitlements ./ci_tooling/entitlements/entitlements.plist -o runtime "dist/OpenCore-Patcher.app"' - name: Package Binary run: cd dist; ditto -c -k --sequesterRsrc --keepParent OpenCore-Patcher.app ../OpenCore-Patcher-wxPython.app.zip - name: Notarize Binary run: xcrun notarytool submit OpenCore-Patcher-wxPython.app.zip --apple-id "${{ env.MAC_NOTARIZATION_USERNAME }}" --password "${{ env.MAC_NOTARIZATION_PASSWORD }}" --team-id "${{ env.MAC_NOTARIZATION_TEAM_ID }}" - name: Generate support package run: /usr/local/bin/packagesbuild ./ci_tooling/autopkg/AutoPkg-Assets-Setup.pkgproj - name: Prepare App for Upload run: mv ./OpenCore-Patcher-wxPython.app.zip ./OpenCore-Patcher-GUI.app.zip - name: Upload App to Artifacts uses: actions/upload-artifact@v4 with: name: OpenCore-Patcher.app (GUI) path: OpenCore-Patcher-GUI.app.zip - name: Upload Package to Artifacts uses: actions/upload-artifact@v4 with: name: AutoPkg-Assets.pkg path: ./dist/AutoPkg-Assets.pkg - name: Upload Binary to Release if: github.event_name == 'release' uses: svenstaro/upload-release-action@e74ff71f7d8a4c4745b560a485cc5fdb9b5b999d with: repo_token: ${{ secrets.GITHUB_TOKEN }} file: OpenCore-Patcher-GUI.app.zip tag: ${{ github.ref }} file_glob: true - name: Upload Package to Release if: github.event_name == 'release' uses: svenstaro/upload-release-action@e74ff71f7d8a4c4745b560a485cc5fdb9b5b999d with: repo_token: ${{ secrets.GITHUB_TOKEN }} file: ./dist/AutoPkg-Assets.pkg tag: ${{ github.ref }} file_glob: true