From fd1b7d51a252991cda7d8fefeab16d1caede86e8 Mon Sep 17 00:00:00 2001 From: Ivan Zinovyev Date: Wed, 13 Feb 2019 13:36:22 +0300 Subject: [PATCH 1/2] Add xcode documentation and certificates readme generator scripts --- .../certificates_readme_generator.sh | 39 +++++++++++++++++++ xcode/build_phases/documentation_generator.sh | 1 + 2 files changed, 40 insertions(+) create mode 100644 xcode/aux_scripts/certificates_readme_generator.sh create mode 100644 xcode/build_phases/documentation_generator.sh diff --git a/xcode/aux_scripts/certificates_readme_generator.sh b/xcode/aux_scripts/certificates_readme_generator.sh new file mode 100644 index 0000000..a195335 --- /dev/null +++ b/xcode/aux_scripts/certificates_readme_generator.sh @@ -0,0 +1,39 @@ +CERTS_PATH="${PROJECT_DIR}/Certificates" + +for config_folder in $CERTS_PATH/*/; do + CONFIG_FOLDER_NAME="$(basename "$config_folder")" + + echo "# ${CONFIG_FOLDER_NAME}" + + for type_folder in $CERTS_PATH/$CONFIG_FOLDER_NAME/*/; do + TYPE_FOLDER_NAME="$(basename "$type_folder")" + + echo "### ${TYPE_FOLDER_NAME}" + echo "|Target|Description|" + echo "|-|-|" + + for target_folder in $CERTS_PATH/$CONFIG_FOLDER_NAME/$TYPE_FOLDER_NAME/*/; do + TARGET_FOLDER_NAME="$(basename "$target_folder")" + + DESCRIPTION_FILE_NAME="description.txt" + + DESCRIPTION_FILE_PATH="${CERTS_PATH}/${CONFIG_FOLDER_NAME}/${TYPE_FOLDER_NAME}/${TARGET_FOLDER_NAME}/${DESCRIPTION_FILE_NAME}" + + if [ -e "$DESCRIPTION_FILE_PATH" ] + then + DESCRIPTION="$(cat $DESCRIPTION_FILE_PATH)" + else + DESCRIPTION="-" + fi + + for file in $CERTS_PATH/$CONFIG_FOLDER_NAME/$TYPE_FOLDER_NAME/$TARGET_FOLDER_NAME/*; do + FILE_NAME="$(basename "$file")" + + if ! [ "$FILE_NAME" == "$DESCRIPTION_FILE_NAME" ] + then + echo "|[${TARGET_FOLDER_NAME}](${CONFIG_FOLDER_NAME}/${TYPE_FOLDER_NAME}/${TARGET_FOLDER_NAME}/${FILE_NAME})|${DESCRIPTION}|" + fi + done + done + done +done \ No newline at end of file diff --git a/xcode/build_phases/documentation_generator.sh b/xcode/build_phases/documentation_generator.sh new file mode 100644 index 0000000..a5449b7 --- /dev/null +++ b/xcode/build_phases/documentation_generator.sh @@ -0,0 +1 @@ +. build-scripts/xcode/aux_scripts/certificates_readme_generator.sh > $PROJECT_DIR/Certificates/README.md \ No newline at end of file From 2de0ff3897ca1e4385c2b73b789e50cbfa374a41 Mon Sep 17 00:00:00 2001 From: Ivan Zinovyev Date: Thu, 14 Feb 2019 01:10:55 +0300 Subject: [PATCH 2/2] Cert readme generator: Rename files properly --- .../certificates_readme_generator.sh | 26 ++++++++++++++++--- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/xcode/aux_scripts/certificates_readme_generator.sh b/xcode/aux_scripts/certificates_readme_generator.sh index a195335..ccc43f3 100644 --- a/xcode/aux_scripts/certificates_readme_generator.sh +++ b/xcode/aux_scripts/certificates_readme_generator.sh @@ -17,7 +17,8 @@ for config_folder in $CERTS_PATH/*/; do DESCRIPTION_FILE_NAME="description.txt" - DESCRIPTION_FILE_PATH="${CERTS_PATH}/${CONFIG_FOLDER_NAME}/${TYPE_FOLDER_NAME}/${TARGET_FOLDER_NAME}/${DESCRIPTION_FILE_NAME}" + TARGET_FOLDER_PATH="${CERTS_PATH}/${CONFIG_FOLDER_NAME}/${TYPE_FOLDER_NAME}/${TARGET_FOLDER_NAME}" + DESCRIPTION_FILE_PATH="${TARGET_FOLDER_PATH}/${DESCRIPTION_FILE_NAME}" if [ -e "$DESCRIPTION_FILE_PATH" ] then @@ -27,11 +28,28 @@ for config_folder in $CERTS_PATH/*/; do fi for file in $CERTS_PATH/$CONFIG_FOLDER_NAME/$TYPE_FOLDER_NAME/$TARGET_FOLDER_NAME/*; do - FILE_NAME="$(basename "$file")" + FILE_NAME="$(basename "$file")" - if ! [ "$FILE_NAME" == "$DESCRIPTION_FILE_NAME" ] + if ! [ "$FILE_NAME" == "$DESCRIPTION_FILE_NAME" ] then - echo "|[${TARGET_FOLDER_NAME}](${CONFIG_FOLDER_NAME}/${TYPE_FOLDER_NAME}/${TARGET_FOLDER_NAME}/${FILE_NAME})|${DESCRIPTION}|" + FILE_PATH="${TARGET_FOLDER_PATH}/${FILE_NAME}" + EXTENSION="${FILE_NAME##*.}" + PROPER_FILE_PREFIX="${PROJECT_NAME}${TARGET_FOLDER_NAME}${CONFIG_FOLDER_NAME}" + + if [ "$EXTENSION" == "mobileprovision" ]; then + FILE_TYPE="Profile" + elif [ "$EXTENSION" == "p12" ]; then + FILE_TYPE="Cert" + elif [ ]; then + echo "Unknown type of file has been found. Not a profile or a certificate." + exit 1 + fi + + PROPER_FILE_NAME="${PROPER_FILE_PREFIX}${FILE_TYPE}" + + mv $FILE_PATH "${TARGET_FOLDER_PATH}/${PROPER_FILE_NAME}.${EXTENSION}" + + echo "|[${TARGET_FOLDER_NAME}](${CONFIG_FOLDER_NAME}/${TYPE_FOLDER_NAME}/${TARGET_FOLDER_NAME}/${PROPER_FILE_NAME}.${EXTENSION})|${DESCRIPTION}|" fi done done