Skip to content

Commit

Permalink
Run master test in the same workflow
Browse files Browse the repository at this point in the history
  • Loading branch information
Amir-P committed Aug 11, 2024
1 parent 4b882c9 commit a3150a3
Show file tree
Hide file tree
Showing 2 changed files with 56 additions and 23 deletions.
37 changes: 37 additions & 0 deletions .github/workflows/_run_performance_test.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
name: Performance Test

on:
workflow_call:
inputs:
branch:
type: string
required: true
artifact_name:
type: string
required: true

jobs:
test:
runs-on: macOS-latest
steps:
- uses: actions/checkout@v3
with:
ref: ${{inputs.branch}}

- uses: subosito/flutter-action@v2
with:
flutter-version: "3.24.0"
cache: true
# Manually Update this `key`
cache-key: "3.24.0"

- name: Run performance tests
working-directory: ./packages/fleather/example
run: |
flutter drive -d macos --driver=test_driver/performance_driver.dart --target=integration_test/scrolling_test.dart --profile
flutter drive -d macos --driver=test_driver/performance_driver.dart --target=integration_test/editing_test.dart --profile
- uses: actions/upload-artifact@v4
with:
name: ${{inputs.artifact_name}}
path: ./packages/fleather/example/build/performance_timelines
42 changes: 19 additions & 23 deletions .github/workflows/performance_test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,41 +4,37 @@ on: [push, pull_request, workflow_dispatch]

jobs:
test:
runs-on: macOS-latest
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3

- uses: subosito/flutter-action@v2
with:
flutter-version: "3.22.0"
flutter-version: "3.24.0"
cache: true
# Manually Update this `key`
cache-key: "3.22.0-stable"
cache-key: "3.24.0"

- name: Restore reference summary from cache
id: performance_timelines_cache_restore
uses: actions/cache/restore@v4
- uses: ./.github/workflows/_run_performance_test.yaml
with:
path: packages/fleather/example/build/performance_timelines
key: performance_timelines
branch: master
artifact_name: master_performance_timelines

- if: steps.performance_timelines_cache_restore.outputs.cache-hit == 'true'
run: mv packages/fleather/example/build/performance_timelines packages/fleather/example/build/reference_performance_timelines
- uses: ./.github/workflows/_run_performance_test.yaml
with:
branch: ${{github.ref}}
artifact_name: current_ref_performance_timelines

- name: Run performance tests
working-directory: ./packages/fleather/example
run: |
flutter drive -d macos --driver=test_driver/performance_driver.dart --target=integration_test/scrolling_test.dart --profile
flutter drive -d macos --driver=test_driver/performance_driver.dart --target=integration_test/editing_test.dart --profile
- uses: actions/download-artifact@v4
with:
name: master_performance_timelines
- run: mv packages/fleather/example/build/performance_timelines packages/fleather/example/build/reference_performance_timelines

- uses: actions/download-artifact@v4
with:
name: current_ref_performance_timelines

- name: Analyze results
working-directory: ./packages/fleather/example
run: dart run test_utils/analyze_performance_result.dart

- name: Save reference summary
if: github.ref == 'refs/heads/master'
uses: actions/cache/save@v4
with:
path: build/performance_timelines
key: performance_timelines
run: dart run test_utils/analyze_performance_result.dart

0 comments on commit a3150a3

Please sign in to comment.