Update build_ios.sh
update script build unsigned ipa
This commit is contained in:
parent
8078e59a83
commit
9f8c40f4b0
1 changed files with 14 additions and 57 deletions
|
|
@ -34,66 +34,23 @@ clang -v
|
||||||
# Generate XCodeProj
|
# Generate XCodeProj
|
||||||
$QT_BIN_DIR/qt-cmake . -B $BUILD_DIR -GXcode -DQT_HOST_PATH=$QT_MACOS_ROOT_DIR
|
$QT_BIN_DIR/qt-cmake . -B $BUILD_DIR -GXcode -DQT_HOST_PATH=$QT_MACOS_ROOT_DIR
|
||||||
|
|
||||||
KEYCHAIN=amnezia.build.ios.keychain
|
|
||||||
KEYCHAIN_FILE=$HOME/Library/Keychains/${KEYCHAIN}-db
|
|
||||||
|
|
||||||
# Setup keychain
|
cd $BUILD_DIR
|
||||||
if [ "${IOS_SIGNING_CERT_BASE64+x}" ]; then
|
xcodebuild archive \
|
||||||
echo "Import certificate"
|
-project AmneziaVPN.xcodeproj \
|
||||||
|
|
||||||
TRUST_CERT_CER=$BUILD_DIR/trust-cert.cer
|
|
||||||
SIGNING_CERT_P12=$BUILD_DIR/signing-cert.p12
|
|
||||||
|
|
||||||
echo $IOS_TRUST_CERT_BASE64 | base64 --decode > $TRUST_CERT_CER
|
|
||||||
echo $IOS_SIGNING_CERT_BASE64 | base64 --decode > $SIGNING_CERT_P12
|
|
||||||
|
|
||||||
shasum -a 256 $TRUST_CERT_CER
|
|
||||||
shasum -a 256 $SIGNING_CERT_P12
|
|
||||||
|
|
||||||
KEYCHAIN_PASS=$IOS_SIGNING_CERT_PASSWORD
|
|
||||||
|
|
||||||
security create-keychain -p $KEYCHAIN_PASS $KEYCHAIN || true
|
|
||||||
security default-keychain -s $KEYCHAIN
|
|
||||||
security unlock-keychain -p $KEYCHAIN_PASS $KEYCHAIN
|
|
||||||
|
|
||||||
security default-keychain
|
|
||||||
security list-keychains
|
|
||||||
|
|
||||||
security import $TRUST_CERT_CER -k $KEYCHAIN -P "" -T /usr/bin/codesign
|
|
||||||
security import $SIGNING_CERT_P12 -k $KEYCHAIN -P $IOS_SIGNING_CERT_PASSWORD -T /usr/bin/codesign
|
|
||||||
|
|
||||||
security set-key-partition-list -S "apple-tool:,apple:,codesign:" -s -k $KEYCHAIN_PASS $KEYCHAIN
|
|
||||||
security find-identity -p codesigning
|
|
||||||
security set-keychain-settings $KEYCHAIN_FILE
|
|
||||||
security set-keychain-settings -t 3600 $KEYCHAIN_FILE
|
|
||||||
security unlock-keychain -p $KEYCHAIN_PASS $KEYCHAIN_FILE
|
|
||||||
|
|
||||||
# Copy provisioning prifiles
|
|
||||||
mkdir -p "$HOME/Library/MobileDevice/Provisioning Profiles/"
|
|
||||||
|
|
||||||
echo $IOS_APP_PROVISIONING_PROFILE | base64 --decode > ~/Library/MobileDevice/Provisioning\ Profiles/app.mobileprovision
|
|
||||||
echo $IOS_NE_PROVISIONING_PROFILE | base64 --decode > ~/Library/MobileDevice/Provisioning\ Profiles/ne.mobileprovision
|
|
||||||
|
|
||||||
shasum -a 256 ~/Library/MobileDevice/Provisioning\ Profiles/app.mobileprovision
|
|
||||||
shasum -a 256 ~/Library/MobileDevice/Provisioning\ Profiles/ne.mobileprovision
|
|
||||||
|
|
||||||
profile_uuid=`grep UUID -A1 -a ~/Library/MobileDevice/Provisioning\ Profiles/app.mobileprovision | grep -io "[-A-F0-9]\{36\}"`
|
|
||||||
profile_ne_uuid=`grep UUID -A1 -a ~/Library/MobileDevice/Provisioning\ Profiles/ne.mobileprovision | grep -io "[-A-F0-9]\{36\}"`
|
|
||||||
|
|
||||||
mv ~/Library/MobileDevice/Provisioning\ Profiles/app.mobileprovision ~/Library/MobileDevice/Provisioning\ Profiles/$profile_uuid.mobileprovision
|
|
||||||
mv ~/Library/MobileDevice/Provisioning\ Profiles/ne.mobileprovision ~/Library/MobileDevice/Provisioning\ Profiles/$profile_ne_uuid.mobileprovision
|
|
||||||
else
|
|
||||||
echo "Failed to import certificate, aborting..."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Build project
|
|
||||||
xcodebuild \
|
|
||||||
"OTHER_CODE_SIGN_FLAGS=--keychain '$KEYCHAIN_FILE'" \
|
|
||||||
-configuration Release \
|
|
||||||
-scheme AmneziaVPN \
|
-scheme AmneziaVPN \
|
||||||
-destination "generic/platform=iOS,name=Any iOS'" \
|
-configuration Release \
|
||||||
-project $BUILD_DIR/AmneziaVPN.xcodeproj
|
-archivePath ./build/AmneziaVPN.xcarchive \
|
||||||
|
CODE_SIGNING_ALLOWED=NO \
|
||||||
|
CODE_SIGN_IDENTITY="" \
|
||||||
|
CODE_SIGNING_REQUIRED=NO
|
||||||
|
|
||||||
# restore keychain
|
mkdir -p Payload
|
||||||
security default-keychain -s login.keychain
|
|
||||||
|
cp -R ./build/AmneziaVPN.xcarchive/Products/Applications/AmneziaVPN.app Payload/
|
||||||
|
|
||||||
|
zip -r AmneziaVPN_unsigned.ipa Payload
|
||||||
|
|
||||||
|
rm -rf Payload
|
||||||
|
|
||||||
|
echo " Build setup completed successfully."
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue