mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-06-15 21:45:19 +00:00
105 lines
2.5 KiB
Bash
Executable File
105 lines
2.5 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
copy_provisioning_profiles () {
|
|
if [ "$CODESIGNING_DATA_PATH" = "" ]; then
|
|
>&2 echo "CODESIGNING_DATA_PATH not defined"
|
|
exit 1
|
|
fi
|
|
|
|
|
|
PROFILES_TYPE="$1"
|
|
case "$PROFILES_TYPE" in
|
|
development)
|
|
EXPECTED_VARIABLES=(\
|
|
WALLET_DEVELOPMENT_PROVISIONING_PROFILE_APP \
|
|
)
|
|
;;
|
|
distribution)
|
|
EXPECTED_VARIABLES=(\
|
|
WALLET_DISTRIBUTION_PROVISIONING_PROFILE_APP \
|
|
)
|
|
;;
|
|
*)
|
|
echo "Unknown build provisioning type: $PROFILES_TYPE"
|
|
exit 1
|
|
;;
|
|
esac
|
|
|
|
EXPECTED_VARIABLE_NAMES=(\
|
|
Wallet \
|
|
)
|
|
|
|
local SEARCH_NAMES=()
|
|
|
|
local MISSING_VARIABLES="0"
|
|
for VARIABLE_NAME in ${EXPECTED_VARIABLES[@]}; do
|
|
if [ "${!VARIABLE_NAME}" = "" ]; then
|
|
echo "$VARIABLE_NAME not defined"
|
|
MISSING_VARIABLES="1"
|
|
fi
|
|
done
|
|
|
|
if [ "$MISSING_VARIABLES" == "1" ]; then
|
|
exit 1
|
|
fi
|
|
|
|
local VARIABLE_COUNT=${#EXPECTED_VARIABLES[@]}
|
|
for (( i=0; i<$VARIABLE_COUNT; i=i+1 )); do
|
|
VARIABLE_NAME="${EXPECTED_VARIABLES[$(($i))]}"
|
|
SEARCH_NAMES=("${SEARCH_NAMES[@]}" "${EXPECTED_VARIABLE_NAMES[$i]}" "${!VARIABLE_NAME}")
|
|
done
|
|
|
|
local DATA_PATH="build-input/data"
|
|
|
|
local OUTPUT_DIRECTORY="$DATA_PATH/provisioning-profiles"
|
|
rm -rf "$OUTPUT_DIRECTORY"
|
|
mkdir -p "$OUTPUT_DIRECTORY"
|
|
|
|
local BUILD_PATH="$OUTPUT_DIRECTORY/BUILD"
|
|
touch "$BUILD_PATH"
|
|
|
|
echo "exports_files([" >> "$BUILD_PATH"
|
|
|
|
local ELEMENT_COUNT=${#SEARCH_NAMES[@]}
|
|
local REMAINDER=$(($ELEMENT_COUNT % 2))
|
|
|
|
if [ $REMAINDER != 0 ]; then
|
|
>&2 echo "Expecting key-value pairs"
|
|
exit 1
|
|
fi
|
|
|
|
for PROFILE in `find "$CODESIGNING_DATA_PATH" -type f -name "*.mobileprovision"`; do
|
|
PROFILE_DATA=$(security cms -D -i "$PROFILE")
|
|
PROFILE_NAME=$(/usr/libexec/PlistBuddy -c "Print :Name" /dev/stdin <<< $(echo $PROFILE_DATA))
|
|
for (( i=0; i<$ELEMENT_COUNT; i=i+2 )); do
|
|
ID=${SEARCH_NAMES[$i]}
|
|
SEARCH_NAME=${SEARCH_NAMES[$(($i + 1))]}
|
|
if [ "$PROFILE_NAME" = "$SEARCH_NAME" ]; then
|
|
VARIABLE_NAME="FOUND_PROFILE_$ID"
|
|
if [ "${!VARIABLE_NAME}" = "" ]; then
|
|
eval "FOUND_PROFILE_$ID=\"$PROFILE\""
|
|
else
|
|
>&2 echo "Found multiple profiles with name \"$SEARCH_NAME\""
|
|
exit 1
|
|
fi
|
|
fi
|
|
done
|
|
done
|
|
|
|
for (( i=0; i<$ELEMENT_COUNT; i=i+2 )); do
|
|
ID=${SEARCH_NAMES[$i]}
|
|
SEARCH_NAME=${SEARCH_NAMES[$(($i + 1))]}
|
|
VARIABLE_NAME="FOUND_PROFILE_$ID"
|
|
FOUND_PROFILE="${!VARIABLE_NAME}"
|
|
if [ "$FOUND_PROFILE" = "" ]; then
|
|
>&2 echo "Profile \"$SEARCH_NAME\" not found"
|
|
exit 1
|
|
fi
|
|
|
|
cp "$FOUND_PROFILE" "$OUTPUT_DIRECTORY/$ID.mobileprovision"
|
|
echo " \"$ID.mobileprovision\"," >> $BUILD_PATH
|
|
done
|
|
|
|
echo "])" >> "$BUILD_PATH"
|
|
}
|