您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

release-sdk.sh 2.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. #!/bin/bash
  2. set -e -u
  3. THIS_DIR=$(cd -P "$(dirname "$(readlink "${BASH_SOURCE[0]}" || echo "${BASH_SOURCE[0]}")")" && pwd)
  4. PROJECT_REPO=$(realpath ${THIS_DIR}/../..)
  5. RELEASE_REPO=$(realpath ${THIS_DIR}/../../../jitsi-meet-ios-sdk-releases)
  6. DEFAULT_SDK_VERSION=$(/usr/libexec/PlistBuddy -c "Print CFBundleShortVersionString" ${THIS_DIR}/../sdk/src/Info.plist)
  7. SDK_VERSION=${OVERRIDE_SDK_VERSION:-${DEFAULT_SDK_VERSION}}
  8. DO_GIT_TAG=${GIT_TAG:-0}
  9. echo "Releasing Jitsi Meet SDK ${SDK_VERSION}"
  10. pushd ${RELEASE_REPO}
  11. # Generate podspec file
  12. cat JitsiMeetSDK.podspec.tpl | sed -e s/VERSION/${SDK_VERSION}/g > JitsiMeetSDK.podspec
  13. # Cleanup
  14. rm -rf Frameworks/*
  15. popd
  16. # Build the SDK
  17. pushd ${PROJECT_REPO}
  18. rm -rf ios/sdk/out
  19. xcodebuild clean \
  20. -workspace ios/jitsi-meet.xcworkspace \
  21. -scheme JitsiMeet
  22. xcodebuild archive \
  23. -workspace ios/jitsi-meet.xcworkspace \
  24. -scheme JitsiMeet \
  25. -configuration Release \
  26. -sdk iphonesimulator \
  27. -destination='generic/platform=iOS Simulator' \
  28. -archivePath ios/sdk/out/ios-simulator \
  29. VALID_ARCHS=x86_64 \
  30. ENABLE_BITCODE=NO \
  31. SKIP_INSTALL=NO \
  32. BUILD_LIBRARY_FOR_DISTRIBUTION=YES
  33. xcodebuild archive \
  34. -workspace ios/jitsi-meet.xcworkspace \
  35. -scheme JitsiMeet \
  36. -configuration Release \
  37. -sdk iphoneos \
  38. -destination='generic/platform=iOS' \
  39. -archivePath ios/sdk/out/ios-device \
  40. VALID_ARCHS=arm64 \
  41. ENABLE_BITCODE=NO \
  42. SKIP_INSTALL=NO \
  43. BUILD_LIBRARY_FOR_DISTRIBUTION=YES
  44. xcodebuild -create-xcframework \
  45. -framework ios/sdk/out/ios-device.xcarchive/Products/Library/Frameworks/JitsiMeet.framework \
  46. -framework ios/sdk/out/ios-simulator.xcarchive/Products/Library/Frameworks/JitsiMeet.framework \
  47. -output ios/sdk/out/JitsiMeet.xcframework
  48. if [[ $DO_GIT_TAG == 1 ]]; then
  49. git tag ios-sdk-${SDK_VERSION}
  50. fi
  51. popd
  52. pushd ${RELEASE_REPO}
  53. # Put the new files in the repo
  54. cp -a ${PROJECT_REPO}/ios/sdk/out/JitsiMeet.xcframework Frameworks/
  55. cp -a ${PROJECT_REPO}/node_modules/react-native-webrtc/apple/WebRTC.xcframework Frameworks/
  56. # Add all files to git
  57. if [[ $DO_GIT_TAG == 1 ]]; then
  58. git add -A .
  59. git commit -m "${SDK_VERSION}"
  60. git tag ${SDK_VERSION}
  61. fi
  62. popd
  63. echo "Finished! Don't forget to push the tags and releases repo artifacts."
  64. echo "The new pod can be pushed to CocoaPods by doing: pod trunk push JitsiMeetSDK.podspec"