#!/bin/bash set -euo pipefail cd "$(dirname "$0")/../ios/LibNovel" echo "=== Testing CI-like signing process ===" # 1. Install provisioning profile (simulate CI) PP_PATH=~/Downloads/LibNovel_Distribution.mobileprovision UUID=$(security cms -D -i "$PP_PATH" | plutil -extract UUID raw -) PROFILE_NAME=$(security cms -D -i "$PP_PATH" | plutil -extract Name raw -) mkdir -p ~/Library/MobileDevice/Provisioning\ Profiles cp "$PP_PATH" ~/Library/MobileDevice/Provisioning\ Profiles/$UUID.mobileprovision echo "Installed profile: $PROFILE_NAME (UUID: $UUID)" # 2. Generate Xcode project echo "Generating Xcode project..." xcodegen generate --spec project.yml --project . # 3. List available provisioning profiles echo -e "\n=== Available provisioning profiles ===" ls -la ~/Library/MobileDevice/Provisioning\ Profiles/ # 4. Try building with xcodebuild using manual signing echo -e "\n=== Attempting archive with manual signing ===" xcodebuild archive \ -scheme LibNovel \ -project LibNovel.xcodeproj \ -configuration Release \ -destination 'generic/platform=iOS' \ -archivePath /tmp/LibNovel.xcarchive \ CODE_SIGN_STYLE=Manual \ CODE_SIGN_IDENTITY="Apple Distribution: Kamil Alekberov (GHZXC6FVMU)" \ DEVELOPMENT_TEAM=GHZXC6FVMU \ PROVISIONING_PROFILE_SPECIFIER="$UUID" \ | xcpretty || true echo -e "\n=== Build complete ==="