From 36d945eaa0759761dc56e1cd733b6578b77112fc Mon Sep 17 00:00:00 2001 From: Marat Al Date: Fri, 23 Jun 2023 00:10:07 +0200 Subject: [PATCH 1/6] Try run on macos-13 and Xcode 14.3 --- .github/workflows/check-pod.yaml | 14 +++++++++++--- ...OS16_2.yaml => integration-test-iOS16_4.yaml} | 16 +++++++++++----- ...-macOS.yaml => integration-test-macOS13.yaml} | 10 ++++++++-- ...S16_1.yaml => integration-test-tvOS16_4.yaml} | 16 +++++++++++----- fastlane/Fastfile | 4 ++-- 5 files changed, 43 insertions(+), 17 deletions(-) rename .github/workflows/{integration-test-iOS16_2.yaml => integration-test-iOS16_4.yaml} (89%) rename .github/workflows/{integration-test-macOS.yaml => integration-test-macOS13.yaml} (92%) rename .github/workflows/{integration-test-tvOS16_1.yaml => integration-test-tvOS16_4.yaml} (88%) diff --git a/.github/workflows/check-pod.yaml b/.github/workflows/check-pod.yaml index f8019fcbd..05669ecc5 100644 --- a/.github/workflows/check-pod.yaml +++ b/.github/workflows/check-pod.yaml @@ -8,13 +8,13 @@ on: jobs: check: - runs-on: macos-latest + runs-on: macos-13 steps: - uses: actions/checkout@v2 - - name: Select Specific Xcode Version (13.4.1) + - name: Select Specific Xcode Version (14.3) run: | - sudo xcode-select -s /Applications/Xcode_13.4.1.app + sudo xcode-select -s /Applications/Xcode_14.3.app echo "Selected Xcode version:" xcodebuild -version @@ -32,6 +32,14 @@ jobs: run: make update - name: Build Ably framework run: make carthage_package + + - name: Upload carthage xcodebuild logs + if: always() + uses: actions/upload-artifact@v2 + with: + name: carthage-xcodebuild-logs + path: /var/folders/sp/*/T/carthage-xcodebuild*.log + - name: Print contents of generated ZIP file run: | unzip -l Ably.framework.zip diff --git a/.github/workflows/integration-test-iOS16_2.yaml b/.github/workflows/integration-test-iOS16_4.yaml similarity index 89% rename from .github/workflows/integration-test-iOS16_2.yaml rename to .github/workflows/integration-test-iOS16_4.yaml index 918a11621..cb7466515 100644 --- a/.github/workflows/integration-test-iOS16_2.yaml +++ b/.github/workflows/integration-test-iOS16_4.yaml @@ -1,4 +1,4 @@ -name: "Integration Test: iOS 16.2" +name: "Integration Test: iOS 16.4" on: pull_request: @@ -12,7 +12,7 @@ on: jobs: check: - runs-on: macos-latest + runs-on: macos-13 env: LC_CTYPE: en_US.UTF-8 @@ -22,6 +22,12 @@ jobs: steps: - name: Check out SDK repo uses: actions/checkout@v2 + + - name: Select Specific Xcode Version (14.3) + run: | + sudo xcode-select -s /Applications/Xcode_14.3.app + echo "Selected Xcode version:" + xcodebuild -version - name: Log environment information run: ./Scripts/log-environment-information.sh @@ -54,7 +60,7 @@ jobs: make submodules bundle install make update_carthage_dependencies_ios - bundle exec fastlane test_iOS16_2 + bundle exec fastlane test_iOS16_4 - name: Check Static Analyzer Output id: analyzer-output @@ -70,7 +76,7 @@ jobs: if: ${{ failure() && steps.analyzer-output.outcome == 'failure' }} uses: actions/upload-artifact@v2 with: - name: static-analyzer-reports-test_iOS16_2 + name: static-analyzer-reports-test_iOS16_4 path: ./derived_data/**/report-*.html - name: Run Examples Tests @@ -78,7 +84,7 @@ jobs: run: | pod repo update pod install - bundle exec fastlane scan -s Tests --output-directory "fastlane/test_output/examples/test_iOS16_2" + bundle exec fastlane scan -s Tests --output-directory "fastlane/test_output/examples/test_iOS16_4" - name: Build APNS Example Project working-directory: ./Examples/AblyPush diff --git a/.github/workflows/integration-test-macOS.yaml b/.github/workflows/integration-test-macOS13.yaml similarity index 92% rename from .github/workflows/integration-test-macOS.yaml rename to .github/workflows/integration-test-macOS13.yaml index a456ff7f1..46107ed02 100644 --- a/.github/workflows/integration-test-macOS.yaml +++ b/.github/workflows/integration-test-macOS13.yaml @@ -1,4 +1,4 @@ -name: "Integration Test: macOS Latest" +name: "Integration Test: macOS 13" on: pull_request: @@ -12,7 +12,7 @@ on: jobs: check: - runs-on: macos-latest + runs-on: macos-13 env: LC_CTYPE: en_US.UTF-8 @@ -22,6 +22,12 @@ jobs: steps: - name: Check out SDK repo uses: actions/checkout@v2 + + - name: Select Specific Xcode Version (14.3) + run: | + sudo xcode-select -s /Applications/Xcode_14.3.app + echo "Selected Xcode version:" + xcodebuild -version - name: Log environment information run: ./Scripts/log-environment-information.sh diff --git a/.github/workflows/integration-test-tvOS16_1.yaml b/.github/workflows/integration-test-tvOS16_4.yaml similarity index 88% rename from .github/workflows/integration-test-tvOS16_1.yaml rename to .github/workflows/integration-test-tvOS16_4.yaml index f8827137a..de7662466 100644 --- a/.github/workflows/integration-test-tvOS16_1.yaml +++ b/.github/workflows/integration-test-tvOS16_4.yaml @@ -1,4 +1,4 @@ -name: "Integration Test: tvOS 16.1" +name: "Integration Test: tvOS 16.4" on: pull_request: @@ -12,7 +12,7 @@ on: jobs: check: - runs-on: macos-latest + runs-on: macos-13 env: LC_CTYPE: en_US.UTF-8 @@ -22,6 +22,12 @@ jobs: steps: - name: Check out SDK repo uses: actions/checkout@v2 + + - name: Select Specific Xcode Version (14.3) + run: | + sudo xcode-select -s /Applications/Xcode_14.3.app + echo "Selected Xcode version:" + xcodebuild -version - name: Log environment information run: ./Scripts/log-environment-information.sh @@ -54,7 +60,7 @@ jobs: make submodules bundle install make update_carthage_dependencies_tvos - bundle exec fastlane test_tvOS16_1 + bundle exec fastlane test_tvOS16_4 - name: Check Static Analyzer Output id: analyzer-output @@ -70,7 +76,7 @@ jobs: if: ${{ failure() && steps.analyzer-output.outcome == 'failure' }} uses: actions/upload-artifact@v2 with: - name: static-analyzer-reports-test_tvOS16_1 + name: static-analyzer-reports-test_tvOS16_4 path: ./derived_data/**/report-*.html - name: Run Examples Tests @@ -78,7 +84,7 @@ jobs: run: | pod repo update pod install - bundle exec fastlane scan -s Tests --output-directory "fastlane/test_output/examples/test_tvOS_16_1" + bundle exec fastlane scan -s Tests --output-directory "fastlane/test_output/examples/test_tvOS_16_4" - name: Xcodebuild Logs Artifact if: always() diff --git a/fastlane/Fastfile b/fastlane/Fastfile index dd04241bb..fa6c3d2e9 100644 --- a/fastlane/Fastfile +++ b/fastlane/Fastfile @@ -22,8 +22,8 @@ end platform :ios do LANE_CONFIGS = [ - LaneConfig.new(:test_iOS16_2, "Ably-iOS", ["iPhone 14 (16.2)"]), - LaneConfig.new(:test_tvOS16_1, "Ably-tvOS", ["Apple TV 4K (2nd generation) (16.1)"]), + LaneConfig.new(:test_iOS16_4, "Ably-iOS", ["iPhone 14 (16.4)"]), + LaneConfig.new(:test_tvOS16_4, "Ably-tvOS", ["Apple TV 4K (3rd generation) (16.4)"]), LaneConfig.new(:test_macOS, "Ably-macOS") ] From dd436f91e878d7638c4fc265092133dd90f2d5ec Mon Sep 17 00:00:00 2001 From: Marat Al Date: Fri, 23 Jun 2023 00:28:02 +0200 Subject: [PATCH 2/6] Updated Carthage build script to Xcode 14 --- Scripts/carthage-with-workaround-for-issue-3019.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Scripts/carthage-with-workaround-for-issue-3019.sh b/Scripts/carthage-with-workaround-for-issue-3019.sh index 265d24049..d84eb76a6 100755 --- a/Scripts/carthage-with-workaround-for-issue-3019.sh +++ b/Scripts/carthage-with-workaround-for-issue-3019.sh @@ -8,10 +8,10 @@ set -euo pipefail xcconfig=$(mktemp /tmp/static.xcconfig.XXXXXX) trap 'rm -f "$xcconfig"' INT TERM HUP EXIT -# For Xcode 13 make sure EXCLUDED_ARCHS is set to arm architectures otherwise +# For Xcode 14 make sure EXCLUDED_ARCHS is set to arm architectures otherwise # the build will fail on lipo due to duplicate architectures. -echo 'EXCLUDED_ARCHS__EFFECTIVE_PLATFORM_SUFFIX_simulator__NATIVE_ARCH_64_BIT_x86_64__XCODE_1300 = arm64 arm64e armv7 armv7s armv6 armv8' >> $xcconfig -echo 'EXCLUDED_ARCHS__EFFECTIVE_PLATFORM_SUFFIX_simulator__NATIVE_ARCH_64_BIT_arm64__XCODE_1300 = arm64 arm64e armv7 armv7s armv6 armv8' >> $xcconfig +echo 'EXCLUDED_ARCHS__EFFECTIVE_PLATFORM_SUFFIX_simulator__NATIVE_ARCH_64_BIT_x86_64__XCODE_1400 = arm64 arm64e armv7 armv7s armv6 armv8' >> $xcconfig +echo 'EXCLUDED_ARCHS__EFFECTIVE_PLATFORM_SUFFIX_simulator__NATIVE_ARCH_64_BIT_arm64__XCODE_1400 = arm64 arm64e armv7 armv7s armv6 armv8' >> $xcconfig echo 'EXCLUDED_ARCHS = $(inherited) $(EXCLUDED_ARCHS__EFFECTIVE_PLATFORM_SUFFIX_$(EFFECTIVE_PLATFORM_SUFFIX)__NATIVE_ARCH_64_BIT_$(NATIVE_ARCH_64_BIT)__XCODE_$(XCODE_VERSION_MAJOR))' >> $xcconfig export XCODE_XCCONFIG_FILE="$xcconfig" From 71314b5191d7fa33ad7d8904588483bd744c5787 Mon Sep 17 00:00:00 2001 From: Marat Al Date: Fri, 23 Jun 2023 00:40:19 +0200 Subject: [PATCH 3/6] Updated logs path --- .github/workflows/check-pod.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check-pod.yaml b/.github/workflows/check-pod.yaml index 05669ecc5..5553d3742 100644 --- a/.github/workflows/check-pod.yaml +++ b/.github/workflows/check-pod.yaml @@ -38,7 +38,7 @@ jobs: uses: actions/upload-artifact@v2 with: name: carthage-xcodebuild-logs - path: /var/folders/sp/*/T/carthage-xcodebuild*.log + path: /var/folders/2p/*/T/carthage-xcodebuild*.log - name: Print contents of generated ZIP file run: | From 2cc544bcd99d4ccc8c2c9f40d3b14a646a04ed06 Mon Sep 17 00:00:00 2001 From: Marat Al Date: Sun, 25 Jun 2023 18:41:41 +0200 Subject: [PATCH 4/6] Added Upload xcodebuild logs step for all workflows. --- .github/workflows/integration-test-iOS16_4.yaml | 7 +++++++ .github/workflows/integration-test-macOS13.yaml | 7 +++++++ .github/workflows/integration-test-tvOS16_4.yaml | 7 +++++++ 3 files changed, 21 insertions(+) diff --git a/.github/workflows/integration-test-iOS16_4.yaml b/.github/workflows/integration-test-iOS16_4.yaml index cb7466515..bdef50e90 100644 --- a/.github/workflows/integration-test-iOS16_4.yaml +++ b/.github/workflows/integration-test-iOS16_4.yaml @@ -61,6 +61,13 @@ jobs: bundle install make update_carthage_dependencies_ios bundle exec fastlane test_iOS16_4 + + - name: Upload carthage xcodebuild logs + if: always() + uses: actions/upload-artifact@v2 + with: + name: carthage-xcodebuild-logs + path: /var/folders/2p/*/T/carthage-xcodebuild*.log - name: Check Static Analyzer Output id: analyzer-output diff --git a/.github/workflows/integration-test-macOS13.yaml b/.github/workflows/integration-test-macOS13.yaml index 46107ed02..d7df1cd78 100644 --- a/.github/workflows/integration-test-macOS13.yaml +++ b/.github/workflows/integration-test-macOS13.yaml @@ -62,6 +62,13 @@ jobs: make update_carthage_dependencies_macos bundle exec fastlane test_macOS + - name: Upload carthage xcodebuild logs + if: always() + uses: actions/upload-artifact@v2 + with: + name: carthage-xcodebuild-logs + path: /var/folders/2p/*/T/carthage-xcodebuild*.log + - name: Check Static Analyzer Output id: analyzer-output run: | diff --git a/.github/workflows/integration-test-tvOS16_4.yaml b/.github/workflows/integration-test-tvOS16_4.yaml index de7662466..b465c71cc 100644 --- a/.github/workflows/integration-test-tvOS16_4.yaml +++ b/.github/workflows/integration-test-tvOS16_4.yaml @@ -62,6 +62,13 @@ jobs: make update_carthage_dependencies_tvos bundle exec fastlane test_tvOS16_4 + - name: Upload carthage xcodebuild logs + if: always() + uses: actions/upload-artifact@v2 + with: + name: carthage-xcodebuild-logs + path: /var/folders/2p/*/T/carthage-xcodebuild*.log + - name: Check Static Analyzer Output id: analyzer-output run: | From b01991e1f80ccfd588927aa3efb8dd01500e9726 Mon Sep 17 00:00:00 2001 From: Marat Al Date: Sun, 25 Jun 2023 23:22:47 +0200 Subject: [PATCH 5/6] Revert "Updated Carthage build script to Xcode 14" This reverts commit dd436f91e878d7638c4fc265092133dd90f2d5ec. --- Scripts/carthage-with-workaround-for-issue-3019.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Scripts/carthage-with-workaround-for-issue-3019.sh b/Scripts/carthage-with-workaround-for-issue-3019.sh index d84eb76a6..265d24049 100755 --- a/Scripts/carthage-with-workaround-for-issue-3019.sh +++ b/Scripts/carthage-with-workaround-for-issue-3019.sh @@ -8,10 +8,10 @@ set -euo pipefail xcconfig=$(mktemp /tmp/static.xcconfig.XXXXXX) trap 'rm -f "$xcconfig"' INT TERM HUP EXIT -# For Xcode 14 make sure EXCLUDED_ARCHS is set to arm architectures otherwise +# For Xcode 13 make sure EXCLUDED_ARCHS is set to arm architectures otherwise # the build will fail on lipo due to duplicate architectures. -echo 'EXCLUDED_ARCHS__EFFECTIVE_PLATFORM_SUFFIX_simulator__NATIVE_ARCH_64_BIT_x86_64__XCODE_1400 = arm64 arm64e armv7 armv7s armv6 armv8' >> $xcconfig -echo 'EXCLUDED_ARCHS__EFFECTIVE_PLATFORM_SUFFIX_simulator__NATIVE_ARCH_64_BIT_arm64__XCODE_1400 = arm64 arm64e armv7 armv7s armv6 armv8' >> $xcconfig +echo 'EXCLUDED_ARCHS__EFFECTIVE_PLATFORM_SUFFIX_simulator__NATIVE_ARCH_64_BIT_x86_64__XCODE_1300 = arm64 arm64e armv7 armv7s armv6 armv8' >> $xcconfig +echo 'EXCLUDED_ARCHS__EFFECTIVE_PLATFORM_SUFFIX_simulator__NATIVE_ARCH_64_BIT_arm64__XCODE_1300 = arm64 arm64e armv7 armv7s armv6 armv8' >> $xcconfig echo 'EXCLUDED_ARCHS = $(inherited) $(EXCLUDED_ARCHS__EFFECTIVE_PLATFORM_SUFFIX_$(EFFECTIVE_PLATFORM_SUFFIX)__NATIVE_ARCH_64_BIT_$(NATIVE_ARCH_64_BIT)__XCODE_$(XCODE_VERSION_MAJOR))' >> $xcconfig export XCODE_XCCONFIG_FILE="$xcconfig" From 713f03a70bfbdfbdba36fd6c414a303b9ff47306 Mon Sep 17 00:00:00 2001 From: Marat Al Date: Mon, 26 Jun 2023 14:00:33 +0200 Subject: [PATCH 6/6] Try with Xcode 14.2 for tvOS --- .github/workflows/integration-test-tvOS16_4.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/integration-test-tvOS16_4.yaml b/.github/workflows/integration-test-tvOS16_4.yaml index b465c71cc..79ac7cfd5 100644 --- a/.github/workflows/integration-test-tvOS16_4.yaml +++ b/.github/workflows/integration-test-tvOS16_4.yaml @@ -23,9 +23,9 @@ jobs: - name: Check out SDK repo uses: actions/checkout@v2 - - name: Select Specific Xcode Version (14.3) + - name: Select Specific Xcode Version (14.2) run: | - sudo xcode-select -s /Applications/Xcode_14.3.app + sudo xcode-select -s /Applications/Xcode_14.2.app echo "Selected Xcode version:" xcodebuild -version