# Merge the yml file to master branch for the cron job schedule to be effective.
# Reference: https://github.community/t/on-schedule-per-branch/17525
name: performance-integration-tests

on:
  # See cron syntax references:
  #   - https://docs.github.com/en/actions/reference/events-that-trigger-workflows#scheduled-events-schedule
  #   - https://crontab.guru/
  schedule:
    # Runs every 4 hours.
    # TODO: Validate when the timer starts after job is triggered.
    - cron:  '0 */4 * * *'

jobs:

  # Public repository: Build and run the Integration Tests for the Firebase performance E2E Test App.
  performance-integration-tests:
    if: github.repository == 'Firebase/firebase-ios-sdk'
    env:
      plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
    runs-on: macos-latest
    steps:
    - uses: actions/checkout@v2
    - name: Setup Bundler
      run: scripts/setup_bundler.sh
    - name: Install Secret GoogleService-Info.plist
      run: |
        scripts/decrypt_gha_secret.sh scripts/gha-encrypted/Performance/GoogleService-Info_e2e_autopush.plist.gpg \
            FirebasePerformance/Tests/FIRPerfE2E/FIRPerfE2EAutopush/GoogleService-Info.plist "$plist_secret"
        scripts/decrypt_gha_secret.sh scripts/gha-encrypted/Performance/GoogleService-Info_e2e_prod.plist.gpg \
            FirebasePerformance/Tests/FIRPerfE2E/FIRPerfE2EProd/GoogleService-Info.plist "$plist_secret"
    - name: BuildAndTest # can be replaced with pod lib lint with CocoaPods 1.10
      run: scripts/third_party/travis/retry.sh scripts/build.sh Performance all integration
