forked from eatvio/eatvio_app
49 lines
1.5 KiB
Bash
49 lines
1.5 KiB
Bash
#!/usr/bin/env bash
|
|
|
|
set -xeu
|
|
set -o pipefail
|
|
|
|
function finish() {
|
|
ditto -c -k --sequesterRsrc --keepParent "${RESULT_BUNDLE_PATH}" "${RESULT_BUNDLE_PATH}.zip"
|
|
rm -rf "${RESULT_BUNDLE_PATH}"
|
|
}
|
|
|
|
trap finish EXIT
|
|
|
|
SDK="${SDK:-iphoneos}"
|
|
WORKSPACE="${WORKSPACE:-Example-iOS.xcworkspace}"
|
|
SCHEME="${SCHEME:-Example-iOS}"
|
|
CONFIGURATION=${CONFIGURATION:-Release}
|
|
|
|
BUILD_DIR=${BUILD_DIR:-.build}
|
|
ARTIFACT_PATH=${RESULT_PATH:-${BUILD_DIR}/Artifacts}
|
|
RESULT_BUNDLE_PATH="${ARTIFACT_PATH}/${SCHEME}.xcresult"
|
|
ARCHIVE_PATH=${ARCHIVE_PATH:-${BUILD_DIR}/Archives/${SCHEME}.xcarchive}
|
|
DERIVED_DATA_PATH=${DERIVED_DATA_PATH:-${BUILD_DIR}/DerivedData}
|
|
CURRENT_PROJECT_VERSION=${BUILD_NUMBER:-0}
|
|
EXPORT_OPTIONS_FILE="Support/ExportOptions.plist"
|
|
|
|
rm -rf "${RESULT_BUNDLE_PATH}"
|
|
|
|
xcrun xcodebuild \
|
|
-workspace "${WORKSPACE}" \
|
|
-scheme "${SCHEME}" \
|
|
-configuration "${CONFIGURATION}" \
|
|
-sdk "${SDK}" \
|
|
-parallelizeTargets \
|
|
-showBuildTimingSummary \
|
|
-disableAutomaticPackageResolution \
|
|
-derivedDataPath "${DERIVED_DATA_PATH}" \
|
|
-archivePath "${ARCHIVE_PATH}" \
|
|
-resultBundlePath "${RESULT_BUNDLE_PATH}" \
|
|
CURRENT_PROJECT_VERSION="${CURRENT_PROJECT_VERSION}" \
|
|
archive
|
|
|
|
xcrun xcodebuild \
|
|
-exportArchive \
|
|
-exportOptionsPlist "${EXPORT_OPTIONS_FILE}" \
|
|
-archivePath "${ARCHIVE_PATH}" \
|
|
-exportPath "${ARTIFACT_PATH}/${SCHEME}.ipa"
|
|
|
|
# Zip up the Xcode Archive into Artifacts folder.
|
|
ditto -c -k --sequesterRsrc --keepParent "${ARCHIVE_PATH}" "${ARTIFACT_PATH}/${SCHEME}.xcarchive.zip" |