archiving #100
This file contains 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: archiving | |
on: | |
pull_request: | |
paths: | |
- '.github/workflows/archiving.yml' | |
schedule: | |
# Run every day at 2am (PST) - cron uses UTC times | |
# This is set to 3 hours after zip workflow finishes so zip testing can run after. | |
- cron: '0 10 * * *' | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.head_ref || github.ref }} | |
cancel-in-progress: true | |
jobs: | |
# Archive tests for pods that support iOS only. | |
pods-ios-only-cron: | |
# Don't run on private repo. | |
if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') | |
runs-on: macos-14 | |
strategy: | |
matrix: | |
# These need to be on a single line or else the formatting won't validate. | |
pod: ["FirebaseAppDistribution", "FirebaseDynamicLinks", "FirebaseInAppMessaging", "FirebasePerformance"] | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 | |
with: | |
cache_key: cron-${{ matrix.os }} | |
- uses: ruby/setup-ruby@v1 | |
- name: Setup Bundler | |
run: scripts/setup_bundler.sh | |
- name: Setup project and archive | |
run: scripts/test_archiving.sh ${{ matrix.pod }} ios ArchiveOutputs/ios.xcarchive | |
# Archive tests for pods that support iOS, tvOS, and macOS. | |
pods-ios-tvos-macos-cron: | |
# Don't run on private repo. | |
if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') | |
runs-on: macos-14 | |
strategy: | |
matrix: | |
target: [ios, tvos, macos] | |
# These need to be on a single line or else the formatting won't validate. | |
pod: ["FirebaseABTesting", "FirebaseAuth", "FirebaseCore", "FirebaseCrashlytics", "FirebaseDatabase", "FirebaseFunctions", "FirebaseMessaging", "FirebaseRemoteConfig", "FirebaseStorage"] | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 | |
with: | |
cache_key: pods-${{ matrix.os }} | |
- uses: ruby/setup-ruby@v1 | |
- name: Setup Bundler | |
run: scripts/setup_bundler.sh | |
- name: Setup project and archive | |
run: scripts/test_archiving.sh ${{ matrix.pod }} ${{ matrix.target }} ArchiveOutputs/${{ matrix.target }}.xcarchive | |
# TODO(#12780: Merge Firestore back into above job after https://github.com/grpc/grpc/pull/36340 | |
pods-ios-tvos-macos-cron-macos12: | |
# Don't run on private repo. | |
if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') | |
runs-on: macos-12 | |
strategy: | |
matrix: | |
target: [ios, tvos, macos] | |
# These need to be on a single line or else the formatting won't validate. | |
pod: ["FirebaseFirestore"] | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 | |
with: | |
cache_key: pods-${{ matrix.os }} | |
- uses: ruby/setup-ruby@v1 | |
- name: Setup Bundler | |
run: scripts/setup_bundler.sh | |
- name: Setup project and archive | |
run: scripts/test_archiving.sh ${{ matrix.pod }} ${{ matrix.target }} ArchiveOutputs/${{ matrix.target }}.xcarchive |