Skip to content

Doc

Doc #41

Workflow file for this run

name: CocoaPods Lint
# Trigger the workflow on push and pull request events
on:
push:
branches: [ main, master, develop ]
pull_request:
branches: [ main, master, develop ]
# Cancel any in-progress workflow runs for the same branch
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
cocoapods-lint:
name: Pod Lib Lint
runs-on: macos-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Setup Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.0'
bundler-cache: true
- name: Install CocoaPods
run: |
gem install cocoapods --no-document
pod --version
- name: Setup Xcode
uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: latest-stable
- name: Show Xcode Version
run: xcodebuild -version
- name: Update CocoaPods Repo
run: pod repo update
- name: Pod Lib Lint - iOS
run: |
echo "🔍 Running pod lib lint for iOS..."
pod lib lint EFQRCode.podspec \
--platforms=ios \
--allow-warnings \
--verbose \
--fail-fast
- name: Pod Lib Lint - macOS
run: |
echo "🔍 Running pod lib lint for macOS..."
pod lib lint EFQRCode.podspec \
--platforms=osx \
--allow-warnings \
--verbose \
--fail-fast
- name: Pod Lib Lint - tvOS
run: |
echo "🔍 Running pod lib lint for tvOS..."
pod lib lint EFQRCode.podspec \
--platforms=tvos \
--allow-warnings \
--verbose \
--fail-fast
- name: Pod Lib Lint - watchOS
run: |
echo "🔍 Running pod lib lint for watchOS..."
pod lib lint EFQRCode.podspec \
--platforms=watchos \
--allow-warnings \
--verbose \
--fail-fast
- name: Pod Lib Lint - visionOS
run: |
echo "🔍 Running pod lib lint for visionOS..."
pod lib lint EFQRCode.podspec \
--platforms=visionos \
--allow-warnings \
--verbose \
--fail-fast
continue-on-error: true # visionOS support might not be available in all Xcode versions
- name: Pod Lib Lint - All Platforms
run: |
echo "🔍 Running comprehensive pod lib lint for all platforms..."
pod lib lint EFQRCode.podspec \
--allow-warnings \
--verbose \
--fail-fast
- name: Pod Spec Lint
run: |
echo "🔍 Running pod spec lint..."
pod spec lint EFQRCode.podspec \
--allow-warnings \
--verbose \
--fail-fast
- name: Success Notification
if: success()
run: |
echo "✅ All CocoaPods lint checks passed successfully!"
echo "🎉 The pod is ready for publishing."
- name: Failure Notification
if: failure()
run: |
echo "❌ CocoaPods lint checks failed!"
echo "🔧 Please fix the issues before merging the PR."
echo "📋 Check the logs above for detailed error information."
exit 1