Skip framework conversion script in CI/GitHub Actions

Added checks to skip the framework conversion script when running in
CI environments (GitHub Actions). The script now exits early if either
CI or GITHUB_ACTIONS environment variables are set.

This ensures:
- Script only runs for local development builds
- GitHub Actions builds use frameworks as-is from MPVKit
- iOS/tvOS builds on macOS 15 with Xcode 16.4 work without conversion

🤖 Generated with Claude Code (https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Arkadiusz Fal
2025-11-10 12:39:13 +01:00
parent 2959f0b387
commit 797ba61ddd

View File

@@ -3014,7 +3014,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "#!/bin/bash\nset -e\n\n[ \"$PLATFORM_NAME\" != \"macosx\" ] && exit 0\n\nconvert_fw() {\n [ ! -d \"$1\" ] && return\n shopt -s nullglob\n for fw in \"$1\"/*.framework; do\n [ ! -d \"$fw\" ] && continue\n [ -d \"$fw/Versions/Current\" ] && continue\n n=$(basename \"$fw\" .framework)\n [ -f \"$fw/Info.plist\" ] && [ ! -d \"$fw/Versions\" ] || continue\n \n mkdir -p \"$fw/Versions/A/Resources\"\n [ -f \"$fw/$n\" ] && mv \"$fw/$n\" \"$fw/Versions/A/\"\n [ -f \"$fw/Info.plist\" ] && mv \"$fw/Info.plist\" \"$fw/Versions/A/Resources/\"\n [ -d \"$fw/Headers\" ] && mv \"$fw/Headers\" \"$fw/Versions/A/\"\n [ -d \"$fw/Modules\" ] && mv \"$fw/Modules\" \"$fw/Versions/A/\"\n \n for i in \"$fw\"/*; do\n b=$(basename \"$i\")\n [ \"$b\" != \"Versions\" ] && [ \"$b\" != \"_CodeSignature\" ] && [ -e \"$i\" ] && mv \"$i\" \"$fw/Versions/A/Resources/\"\n done\n \n (cd \"$fw/Versions\" && ln -sf A Current)\n (cd \"$fw\" && ln -sf Versions/Current/Resources/Info.plist Info.plist && ln -sf Versions/Current/$n $n && ln -sf Versions/Current/Resources Resources)\n [ -d \"$fw/Versions/A/Headers\" ] && (cd \"$fw\" && ln -sf Versions/Current/Headers Headers)\n [ -d \"$fw/Versions/A/Modules\" ] && (cd \"$fw\" && ln -sf Versions/Current/Modules Modules)\n \n # Re-sign the framework after conversion\n codesign --force --sign \"$EXPANDED_CODE_SIGN_IDENTITY\" --timestamp --options runtime \"$fw\" || true\n done\n shopt -u nullglob\n}\n\nconvert_fw \"$BUILT_PRODUCTS_DIR/$CONTENTS_FOLDER_PATH/Frameworks\"\n";
shellScript = "#!/bin/bash\nset -e\n\n# Skip in CI/GitHub Actions - only run locally\n[ -n \"$CI\" ] && exit 0\n[ -n \"$GITHUB_ACTIONS\" ] && exit 0\n\n[ \"$PLATFORM_NAME\" != \"macosx\" ] && exit 0\n\nconvert_fw() {\n [ ! -d \"$1\" ] && return\n shopt -s nullglob\n for fw in \"$1\"/*.framework; do\n [ ! -d \"$fw\" ] && continue\n [ -d \"$fw/Versions/Current\" ] && continue\n n=$(basename \"$fw\" .framework)\n [ -f \"$fw/Info.plist\" ] && [ ! -d \"$fw/Versions\" ] || continue\n \n mkdir -p \"$fw/Versions/A/Resources\"\n [ -f \"$fw/$n\" ] && mv \"$fw/$n\" \"$fw/Versions/A/\"\n [ -f \"$fw/Info.plist\" ] && mv \"$fw/Info.plist\" \"$fw/Versions/A/Resources/\"\n [ -d \"$fw/Headers\" ] && mv \"$fw/Headers\" \"$fw/Versions/A/\"\n [ -d \"$fw/Modules\" ] && mv \"$fw/Modules\" \"$fw/Versions/A/\"\n \n for i in \"$fw\"/*; do\n b=$(basename \"$i\")\n [ \"$b\" != \"Versions\" ] && [ \"$b\" != \"_CodeSignature\" ] && [ -e \"$i\" ] && mv \"$i\" \"$fw/Versions/A/Resources/\"\n done\n \n (cd \"$fw/Versions\" && ln -sf A Current)\n (cd \"$fw\" && ln -sf Versions/Current/Resources/Info.plist Info.plist && ln -sf Versions/Current/$n $n && ln -sf Versions/Current/Resources Resources)\n [ -d \"$fw/Versions/A/Headers\" ] && (cd \"$fw\" && ln -sf Versions/Current/Headers Headers)\n [ -d \"$fw/Versions/A/Modules\" ] && (cd \"$fw\" && ln -sf Versions/Current/Modules Modules)\n \n # Re-sign the framework after conversion\n codesign --force --sign \"$EXPANDED_CODE_SIGN_IDENTITY\" --timestamp --options runtime \"$fw\" || true\n done\n shopt -u nullglob\n}\n\nconvert_fw \"$BUILT_PRODUCTS_DIR/$CONTENTS_FOLDER_PATH/Frameworks\"\n";
};
37FD43EA2704A2350073EE42 /* Run Script */ = {
isa = PBXShellScriptBuildPhase;