Skip to content

Fix actions build (#10) #11

Fix actions build (#10)

Fix actions build (#10) #11

Workflow file for this run

name: Build IPA with Fake Signing
on:
push:
branches: [main] # Or your default branch
workflow_dispatch: # Allows manual triggering
jobs:
build:
runs-on: macos-latest # Use the latest macOS runner
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install ldid
run: brew install ldid
- name: Select Latest Xcode
run: sudo xcode-select -switch /Applications/Xcode.app
- name: Build Xcode Archive
run: |
xcodebuild archive \
-project LocalDevVPN.xcodeproj \
-scheme LocalDevVPN \
-destination 'generic/platform=iOS' \
-archivePath build/LocalDevVPN.xcarchive \
CODE_SIGN_IDENTITY="" \
CODE_SIGNING_REQUIRED=NO \
CODE_SIGNING_ALLOWED=NO
- name: Create Payload directory
run: mkdir -p Payload
- name: Copy App to Payload
run: cp -R build/LocalDevVPN.xcarchive/Products/Applications/LocalDevVPN.app Payload/LocalDevVPN.app
- name: Find and Sign App Extension
run: |
APPEX_PATH=$(find Payload/LocalDevVPN.app/PlugIns -name "*.appex" | head -n 1)
if [ -z "$APPEX_PATH" ]; then
echo "Error: App Extension (.appex) not found in PlugIns directory."
exit 1
fi
echo "Found App Extension at: $APPEX_PATH"
# Use the specific entitlements for the extension
ldid -S"${GITHUB_WORKSPACE}/TunnelProv/TunnelProv.entitlements" "$APPEX_PATH/$(basename "$APPEX_PATH" .appex)"
echo "Signed App Extension."
- name: Sign Main App Bundle
run: |
APP_BINARY_PATH="Payload/LocalDevVPN.app/LocalDevVPN"
# Use the specific entitlements for the main app
ldid -S"${GITHUB_WORKSPACE}/LocalDevVPN/LocalDevVPN.entitlements" "$APP_BINARY_PATH"
echo "Signed Main App Bundle."
- name: Create IPA
run: |
zip -r ./LocalDevVPN-fakesigned.ipa Payload
- name: Upload IPA Artifact
uses: actions/upload-artifact@v4
with:
name: LocalDevVPN-IPA.ipa
path: LocalDevVPN-fakesigned.ipa