-
Notifications
You must be signed in to change notification settings - Fork 306
Description
It seems that in this stage, rules would unzip the bundle, codesign it and re-zip it. These unzipping and zipping steps consume too much time if the app is large (e.g. my bundle is about 3GB). As I would always launch the app via lldb, which can bypass the codesign problem, I'd like to just skip this stage to speedup building.
For instance, it takes me 8s to link the final binary, 15s to bundle, and 60s to codesign (the whole stage). Also, I have an extra unzip genrule (unzip the bundle) which takes about 10s.
I've also tried tree_artifact_outputs option, but this results the codesign stage to cost 150s (which only saves the last unzip stage, which costs 10s).
rules_apple/tools/bundletool/process_and_sign.sh.template
Lines 33 to 34 in 7e4c6b2
| # Expand the unprocessed archive into the temporary directory. | |
| unzip -qq -d "$WORK_DIR" "$UNPROCESSED_ARCHIVE_PATH" |
rules_apple/tools/bundletool/process_and_sign.sh.template
Lines 74 to 83 in 7e4c6b2
| ( | |
| find . -type f -or -type l && \ | |
| find . -path "*/Info.plist" | sed -E 's|(/Contents)?/Info.plist$||g' \ | |
| ) \ | |
| | sort \ | |
| | zip -qX \ | |
| --symlinks \ | |
| "-@" \ | |
| --compression-method \ | |
| "$COMPRESSION_METHOD" "$OUTPUT_BASENAME" |