core.yml 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. name: core
  2. permissions:
  3. contents: read
  4. on:
  5. workflow_dispatch:
  6. pull_request:
  7. paths:
  8. - 'FirebaseCore**'
  9. - '.github/workflows/core.yml'
  10. - '.github/workflows/common.yml'
  11. - '.github/workflows/common_cocoapods.yml'
  12. - '.github/workflows/common_catalyst.yml'
  13. - 'Gemfile*'
  14. schedule:
  15. # Run every day at 2am (PST) - cron uses UTC times
  16. - cron: '0 10 * * *'
  17. concurrency:
  18. group: ${{ github.workflow }}-${{ github.head_ref || github.ref }}
  19. cancel-in-progress: true
  20. jobs:
  21. spm:
  22. uses: ./.github/workflows/common.yml
  23. with:
  24. target: CoreUnit
  25. catalyst:
  26. uses: ./.github/workflows/common_catalyst.yml
  27. with:
  28. product: FirebaseCore
  29. target: FirebaseCore-Unit-unit
  30. pod_lib_lint:
  31. uses: ./.github/workflows/common_cocoapods.yml
  32. with:
  33. product: FirebaseCore
  34. core-cron-only:
  35. # Don't run on private repo.
  36. if: github.event_name == 'schedule' && github.repository == 'Firebase/firebase-ios-sdk'
  37. runs-on: macos-14
  38. strategy:
  39. matrix:
  40. target: [ios, tvos, macos]
  41. flags: [
  42. '--use-static-frameworks'
  43. ]
  44. needs: pod_lib_lint
  45. steps:
  46. - uses: actions/checkout@v4
  47. - uses: ruby/setup-ruby@354a1ad156761f5ee2b7b13fa8e09943a5e8d252 # v1
  48. - name: Xcode
  49. run: sudo xcode-select -s /Applications/Xcode_16.2.app/Contents/Developer
  50. - name: Setup Bundler
  51. run: scripts/setup_bundler.sh
  52. - name: PodLibLint Core Cron
  53. run: scripts/third_party/travis/retry.sh scripts/pod_lib_lint.rb FirebaseCore.podspec --platforms=${{ matrix.target }} ${{ matrix.flags }}