From 68c30e2d722c411ab04c5471eb5cd383ad11a08a Mon Sep 17 00:00:00 2001 From: Tony Li Date: Wed, 29 Nov 2023 10:03:28 +1300 Subject: [PATCH 1/2] Update CI Toolkit plugin to workaround a CocoaPods issue This will unblock us from testing and release pod from CI. See [this PR][PR] for details. [PR]: https://github.com/Automattic/a8c-ci-toolkit-buildkite-plugin/pull/78 --- .buildkite/pipeline.yml | 12 +++--------- .buildkite/publish-pod.sh | 4 ++-- 2 files changed, 5 insertions(+), 11 deletions(-) diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index d020cb93..26ae5984 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -1,7 +1,7 @@ # Nodes with values to reuse in the pipeline. common_params: plugins: &common_plugins - - automattic/a8c-ci-toolkit#2.18.2 + - automattic/a8c-ci-toolkit#3.0.1 # Common environment values to use with the `env` key. env: &common_env IMAGE_ID: xcode-15.0.1 @@ -25,16 +25,10 @@ steps: ################# # Validate Podspec ################# - - label: "🔬 Validate Podspec – ⚠️ Bypassed ⚠️" + - label: "🔬 Validate Podspec" key: "validate" command: | - # validate_podspec - echo '+++ ⚠️ validate_podspec was bypassed ⚠️' - # post a message in the logs - cat .buildkite/validate_podspec_annotation.md - # and also as an annotation - cat .buildkite/validate_podspec_annotation.md | buildkite-agent annotate --style 'warning' - key: "validate" + validate_podspec --patch-cocoapods env: *common_env plugins: *common_plugins diff --git a/.buildkite/publish-pod.sh b/.buildkite/publish-pod.sh index 63e06361..20ded089 100755 --- a/.buildkite/publish-pod.sh +++ b/.buildkite/publish-pod.sh @@ -8,10 +8,10 @@ echo "--- :rubygems: Setting up Gems" install_gems echo "--- :cocoapods: Publishing Pod to CocoaPods CDN" -publish_pod $PODSPEC_PATH +publish_pod --patch-cocoapods $PODSPEC_PATH echo "--- :cocoapods: Publishing Pod to WP Specs Repo" -publish_private_pod $PODSPEC_PATH $SPECS_REPO "$SPEC_REPO_PUBLIC_DEPLOY_KEY" +publish_private_pod --patch-cocoapods $PODSPEC_PATH $SPECS_REPO "$SPEC_REPO_PUBLIC_DEPLOY_KEY" echo "--- :slack: Notifying Slack" slack_notify_pod_published $PODSPEC_PATH "$SLACK_WEBHOOK" From cb55a536a6cf3dd0ab56f312066b1d753cf57934 Mon Sep 17 00:00:00 2001 From: Tony Li Date: Thu, 30 Nov 2023 10:37:19 +1300 Subject: [PATCH 2/2] Remove a no longer needed doc --- .buildkite/validate_podspec_annotation.md | 10 ---------- 1 file changed, 10 deletions(-) delete mode 100644 .buildkite/validate_podspec_annotation.md diff --git a/.buildkite/validate_podspec_annotation.md b/.buildkite/validate_podspec_annotation.md deleted file mode 100644 index 8789ec4e..00000000 --- a/.buildkite/validate_podspec_annotation.md +++ /dev/null @@ -1,10 +0,0 @@ -**`validate_podspec` was bypassed!** - -As of Xcode 14.3, libraries with deployment target below iOS 11 (iOS 12 in Xcode 15) fail to build out of the box. -The reason is a missing file, `/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/arc/libarclite_iphonesimulator.a`, more info [here](https://stackoverflow.com/questions/75574268/missing-file-libarclite-iphoneos-a-xcode-14-3). - -Client apps can work around this with a post install hook that updates the dependency deployment target, but libraries do not have this option. - -Our old Alamofire dependency targets iOS 8.0, making the validation build fail. - -In the interest of using up to date CI (i.e. not waste time downloading old images) we bypass validation until either we are able to drop or upgraed Alamofire, or find a workaround.