Implement performance benchmarks #8
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: Performance Benchmarks | |
on: | |
schedule: | |
# Runs "At 03:00 every night" | |
- cron: '0 3 * * *' | |
pull_request: | |
branches: # FIXME: delete this | |
- '**' | |
# types: | |
# - opened | |
# - ready_for_review | |
workflow_dispatch: | |
env: | |
HOMEBREW_NO_INSTALL_CLEANUP: 1 # Disable cleanup for homebrew, we don't need it on CI | |
jobs: | |
xcmetrics: | |
name: XCMetrics | |
runs-on: macos-14 | |
env: | |
GITHUB_TOKEN: '${{ secrets.CI_BOT_GITHUB_TOKEN }}' | |
steps: | |
- name: Install Bot SSH Key | |
# if: ${{ github.event_name != 'pull_request' || github.event.pull_request.draft == false }} # FIXME: delete the comment | |
uses: webfactory/[email protected] | |
with: | |
ssh-private-key: ${{ secrets.BOT_SSH_PRIVATE_KEY }} | |
- uses: actions/[email protected] | |
# if: ${{ github.event_name != 'pull_request' || github.event.pull_request.draft == false }} # FIXME: delete the comment | |
with: | |
fetch-depth: 0 # to fetch git tags | |
- uses: ./.github/actions/bootstrap | |
# if: ${{ github.event_name != 'pull_request' || github.event.pull_request.draft == false }} # FIXME: delete the comment | |
env: | |
GOOGLE_APPLICATION_CREDENTIALS: ${{ secrets.GOOGLE_APPLICATION_CREDENTIALS }} | |
INSTALL_GCLOUD: true | |
- name: Run Performance Metrics | |
# if: ${{ github.event_name != 'pull_request' || github.event.pull_request.draft == false }} # FIXME: delete the comment | |
run: bundle exec fastlane xcmetrics | |
timeout-minutes: 120 | |
env: | |
GITHUB_PR_NUM: ${{ github.event.pull_request.number }} | |
BRANCH_NAME: ${{ github.event.pull_request.head.ref }} | |
MATCH_PASSWORD: ${{ secrets.MATCH_PASSWORD }} | |
APPSTORE_API_KEY: ${{ secrets.APPSTORE_API_KEY }} | |
- uses: actions/upload-artifact@v3 | |
if: failure() | |
with: | |
name: Test Data | |
path: | | |
derived_data/Build/Products/xcodebuild_output.log | |
fastlane/performance/stream-chat-swiftui.json |