ref: Cleanup broken references and paths on Cocoapods project #2672
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Test CocoaPods | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
paths: | |
- ".github/workflows/integration-test.yml" | |
- "*.xcodeproj" | |
- "*.xcworkspace" | |
- "Samples/iOS-Cocoapods-*/**" | |
- "scripts/ci-select-xcode.sh" | |
- "scripts/ci-diagnostics.sh" | |
- "Sources/**" | |
- "*.podspec" | |
- "fastlane/**" | |
- "Gemfile.lock" | |
- "Plans/iOS-Cocoapods-Swift6_Base.xctestplan" | |
# Concurrency configuration: | |
# - We use workflow-specific concurrency groups to prevent multiple CocoaPods integration tests, | |
# as these tests involve complex dependency resolution and build processes. | |
# - For pull requests, we cancel in-progress runs when new commits are pushed since only the | |
# latest integration test results matter for validating CocoaPods compatibility. | |
# - For main branch pushes, we never cancel integration tests to ensure our CocoaPods | |
# integration remains functional for all downstream consumers relying on our library. | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: ${{ github.event_name == 'pull_request' }} | |
jobs: | |
test: | |
name: CocoaPods Integration | |
runs-on: macos-15 | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@v5 | |
- name: Select Xcode | |
run: ./scripts/ci-select-xcode.sh 16.4 | |
- name: Setup Ruby | |
uses: ruby/setup-ruby@32110d4e311bd8996b2a82bf2a43b714ccc91777 # v1.221.0 | |
with: | |
bundler-cache: true | |
- name: Run Integration Test | |
run: bundle exec fastlane cocoapods_integration_test | |
working-directory: Samples/iOS-Cocoapods-Swift6 | |
- name: Upload Result Bundle | |
uses: actions/upload-artifact@v4 | |
if: ${{ failure() }} | |
with: | |
name: integration-test-iOS-Cocoapods-Swift6.xcresult | |
path: Samples/iOS-Cocoapods-Swift6/fastlane/test_results/results.xcresult | |
- name: Run CI Diagnostics | |
if: failure() | |
run: ./scripts/ci-diagnostics.sh |