Require arm64 Xcode 26.2; add notarization #19
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: macOS build | |
| on: | |
| pull_request: | |
| push: | |
| branches: | |
| - main | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| jobs: | |
| build: | |
| runs-on: [self-hosted, macOS, ARM64] | |
| steps: | |
| - name: Check out repository | |
| uses: actions/checkout@v6.0.2 | |
| - name: Verify Apple Silicon Xcode runner | |
| run: | | |
| test "$(uname -m)" = "arm64" | |
| xcodebuild -version | |
| python3 - <<'PY' | |
| import re | |
| import subprocess | |
| import sys | |
| output = subprocess.check_output(["xcodebuild", "-version"], text=True) | |
| match = re.search(r"Xcode\s+(\d+(?:\.\d+)?)", output) | |
| if not match: | |
| sys.exit("Unable to parse Xcode version") | |
| version = tuple(int(part) for part in match.group(1).split(".")) | |
| required = (26, 2) | |
| if version < required: | |
| sys.exit(f"Xcode {match.group(1)} is too old; require Xcode 26.2+") | |
| PY | |
| - name: Build MacPGP | |
| run: | | |
| xcodebuild build \ | |
| -project MacPGP/MacPGP.xcodeproj \ | |
| -scheme MacPGP \ | |
| -destination 'platform=macOS' \ | |
| -skipPackagePluginValidation \ | |
| -skipMacroValidation \ | |
| CODE_SIGN_STYLE=Manual \ | |
| CODE_SIGN_IDENTITY=- \ | |
| CODE_SIGNING_REQUIRED=NO \ | |
| CODE_SIGN_ENTITLEMENTS= \ | |
| DEVELOPMENT_TEAM= \ | |
| PROVISIONING_PROFILE_SPECIFIER= \ | |
| MACOSX_DEPLOYMENT_TARGET=26.2 |