[Infra] Add workflow_dispatch trigger to enable manual dispatch of workflows.
          
            #1567
        
      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: core_extension | |
| on: | |
| workflow_dispatch: | |
| pull_request: | |
| paths: | |
| - 'FirebaseCoreExtension.podspec' | |
| - 'FirebaseCore/Extension/**' | |
| - '.github/workflows/core_extension.yml' | |
| - 'Gemfile*' | |
| schedule: | |
| # Run every day at 2am (PST) - cron uses UTC times | |
| - cron: '0 10 * * *' | |
| jobs: | |
| # Since `FirebaseCoreExtension` only contains headers, linting is sufficient for testing. | |
| pod-lib-lint: | |
| # Don't run on private repo unless it is a PR. | |
| if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request' | |
| strategy: | |
| matrix: | |
| target: [ios, tvos, macos, watchos] | |
| build-env: | |
| - os: macos-14 | |
| xcode: Xcode_15.2 | |
| - os: macos-15 | |
| xcode: Xcode_16.2 | |
| runs-on: ${{ matrix.build-env.os }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: ruby/setup-ruby@354a1ad156761f5ee2b7b13fa8e09943a5e8d252 # v1 | |
| - name: Setup Bundler | |
| run: scripts/setup_bundler.sh | |
| - name: Xcode | |
| run: sudo xcode-select -s /Applications/${{ matrix.build-env.xcode }}.app/Contents/Developer | |
| - name: Build and test | |
| run: scripts/third_party/travis/retry.sh scripts/pod_lib_lint.rb FirebaseCoreExtension.podspec --platforms=${{ matrix.target }} | |
| core-internal-cron-only: | |
| # Don't run on private repo. | |
| if: github.event_name == 'schedule' && github.repository == 'Firebase/firebase-ios-sdk' | |
| runs-on: macos-14 | |
| strategy: | |
| matrix: | |
| target: [ios, tvos, macos] | |
| flags: [ | |
| '--use-static-frameworks' | |
| ] | |
| needs: pod-lib-lint | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: ruby/setup-ruby@354a1ad156761f5ee2b7b13fa8e09943a5e8d252 # v1 | |
| - name: Setup Bundler | |
| run: scripts/setup_bundler.sh | |
| - name: PodLibLint CoreInternal Cron | |
| run: scripts/third_party/travis/retry.sh scripts/pod_lib_lint.rb FirebaseCoreExtension.podspec --platforms=${{ matrix.target }} ${{ matrix.flags }} |