-
Notifications
You must be signed in to change notification settings - Fork 88
chore: adopt dart native build hooks #236
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Changes from 5 commits
2179ad8
b518494
33ed8f2
aa44b69
c8c04fd
c03e649
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -5,6 +5,10 @@ on: | |
| pull_request: | ||
| branches: [master] | ||
|
|
||
| concurrency: | ||
| group: ${{ github.workflow }}-${{ github.ref }} | ||
| cancel-in-progress: true | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. where does this come from and how is it related? |
||
|
|
||
| env: | ||
| PUB_ENVIRONMENT: bot.github | ||
|
|
||
|
|
@@ -38,60 +42,19 @@ jobs: | |
| sudo apt-get install -y ninja-build libgtk-3-dev | ||
| flutter config --no-analytics | ||
| - run: flutter pub get | ||
| - run: flutter pub run webcrypto:setup | ||
| - run: flutter test | ||
| - run: flutter test --coverage | ||
| - run: flutter test --platform chrome | ||
| - run: flutter test --platform chrome --wasm | ||
| - run: dart test -p chrome -c dart2wasm | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This very cool, now we can test with |
||
| - run: xvfb-run dart test -p firefox | ||
| - run: xvfb-run flutter test integration_test/webcrypto_test.dart -d linux | ||
| working-directory: ./example | ||
| - uses: nanasess/setup-chromedriver@v2 | ||
| - name: Run integration_test with chromedriver | ||
| working-directory: ./example | ||
| run: | | ||
| xvfb-run ../tool/with-chromedriver.sh flutter drive \ | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'm guessing this stopped working, but that should land in a different PR. |
||
| --driver=test_driver/integration_test.dart \ | ||
| --target=integration_test/webcrypto_test.dart \ | ||
| -d chrome | ||
| - run: xvfb-run flutter pub run test -p vm,chrome,firefox | ||
| macos-14: | ||
| name: MacOS 14 desktop / Chrome / Firefox | ||
| runs-on: macos-14 # Test with xcode 15 | ||
| timeout-minutes: 15 | ||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - uses: subosito/flutter-action@v2 | ||
| # Report collected coverage | ||
| - uses: coverallsapp/github-action@v2 | ||
| with: | ||
| channel: 'stable' | ||
| cache: true | ||
| - name: Configure Flutter | ||
| run: | | ||
| flutter config --no-analytics | ||
| - run: flutter pub get | ||
| - run: flutter pub run webcrypto:setup | ||
| - run: flutter test | ||
| - run: flutter test --platform chrome | ||
| - run: flutter test --platform chrome --wasm | ||
| - run: flutter test integration_test/webcrypto_test.dart -d macos | ||
| working-directory: ./example | ||
| # TODO: Enable chromedriver testing on MacOS when it works reliably | ||
| #- uses: nanasess/setup-chromedriver@v2 | ||
| #- name: Run integration_test with chromedriver | ||
| # working-directory: ./example | ||
| # run: | | ||
| # ../tool/with-chromedriver.sh flutter drive \ | ||
| # --driver=test_driver/integration_test.dart \ | ||
| # --target=integration_test/webcrypto_test.dart \ | ||
| # -d chrome | ||
| - uses: browser-actions/setup-firefox@v1 | ||
| - name: flutter pub run test -p vm,chrome,firefox | ||
| shell: bash | ||
| # Remove FIREFOX_EXECUTABLE override when flutter upgrades past package:test 1.25.8 | ||
| # Issue is fixed in https://github.com/dart-lang/test/pull/2276 | ||
| run: | | ||
| export FIREFOX_EXECUTABLE="$(which firefox)" | ||
| flutter pub run test -p vm,chrome,firefox | ||
| macos-15: | ||
| name: MacOS 15 desktop / Chrome / Firefox | ||
| flag-name: linux | ||
| parallel: true | ||
| macos: | ||
| name: MacOS desktop / Chrome / Firefox | ||
| runs-on: macos-15 # Test with xcode 16 | ||
| timeout-minutes: 15 | ||
| steps: | ||
|
|
@@ -104,21 +67,19 @@ jobs: | |
| run: | | ||
| flutter config --no-analytics | ||
| - run: flutter pub get | ||
| - run: flutter pub run webcrypto:setup | ||
| - run: flutter test | ||
| - run: flutter test --platform chrome | ||
| - run: flutter test --platform chrome --wasm | ||
| - run: flutter test integration_test/webcrypto_test.dart -d macos | ||
| working-directory: ./example | ||
| # TODO: Enable chromedriver testing on MacOS when it works reliably | ||
| - uses: browser-actions/setup-firefox@v1 | ||
| - name: flutter pub run test -p vm,chrome,firefox | ||
| - name: Run Firefox tests | ||
| shell: bash | ||
| # Remove FIREFOX_EXECUTABLE override when flutter upgrades past package:test 1.25.8 | ||
| # Issue is fixed in https://github.com/dart-lang/test/pull/2276 | ||
| run: | | ||
| export FIREFOX_EXECUTABLE="$(which firefox)" | ||
| flutter pub run test -p vm,chrome,firefox | ||
| dart test -p firefox | ||
| windows: | ||
| name: Windows desktop / Chrome / Firefox | ||
| runs-on: windows-latest | ||
|
|
@@ -134,26 +95,21 @@ jobs: | |
| run: | | ||
| flutter config --no-analytics | ||
| - run: flutter pub get | ||
| - run: flutter pub run webcrypto:setup | ||
| - run: flutter test | ||
| #- run: flutter test --platform chrome | ||
| #- run: flutter test --platform chrome --wasm | ||
| - run: flutter test --coverage | ||
| - run: dart test -p chrome | ||
| - run: dart test -p firefox | ||
| - run: flutter test integration_test/webcrypto_test.dart -d windows | ||
| working-directory: ./example | ||
| - uses: nanasess/setup-chromedriver@v2 | ||
| - name: Run integration_test with chromedriver | ||
| working-directory: ./example | ||
| shell: bash | ||
| run: | | ||
| ../tool/with-chromedriver.sh flutter drive \ | ||
| --driver=test_driver/integration_test.dart \ | ||
| --target=integration_test/webcrypto_test.dart \ | ||
| -d chrome | ||
| - run: flutter pub run test -p vm,chrome,firefox | ||
| # Report collected coverage | ||
| - uses: coverallsapp/github-action@v2 | ||
| with: | ||
| flag-name: windows | ||
| parallel: true | ||
| ios: | ||
| name: iOS emulator (iPhone) | ||
| runs-on: macos-14 | ||
| timeout-minutes: 15 | ||
| continue-on-error: true | ||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - uses: subosito/flutter-action@v2 | ||
|
|
@@ -173,6 +129,7 @@ jobs: | |
| name: Android emulator | ||
| runs-on: ubuntu-latest | ||
| timeout-minutes: 15 | ||
| continue-on-error: true | ||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - uses: subosito/flutter-action@v2 | ||
|
|
@@ -202,62 +159,13 @@ jobs: | |
| arch: x86_64 | ||
| working-directory: ./example | ||
| script: flutter test integration_test/webcrypto_test.dart -d emulator | ||
| linux-coverage: | ||
| name: Linux desktop / Chrome / Firefox (coverage) | ||
| runs-on: ubuntu-latest | ||
| timeout-minutes: 15 | ||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - uses: subosito/flutter-action@v2 | ||
| with: | ||
| channel: 'stable' | ||
| cache: true | ||
| - name: Configure Flutter | ||
| run: | | ||
| sudo apt-get update -y | ||
| sudo apt-get install -y ninja-build libgtk-3-dev | ||
| flutter config --no-analytics | ||
| - run: flutter pub get | ||
| - run: flutter pub run webcrypto:setup | ||
| - run: xvfb-run flutter pub run test -p vm,chrome,firefox -c dart2js,dart2wasm --coverage ./coverage | ||
| # Report collected coverage | ||
| - name: Convert coverage to lcov | ||
| run: dart run coverage:format_coverage -i ./coverage -o ./coverage/lcov.info --lcov --report-on lib/ | ||
| - uses: coverallsapp/github-action@v2 | ||
| with: | ||
| flag-name: linux | ||
| parallel: true | ||
| windows-coverage: | ||
| name: Windows desktop / Chrome / Firefox (coverage) | ||
| runs-on: windows-latest | ||
| timeout-minutes: 15 | ||
| steps: | ||
| - uses: ilammy/setup-nasm@v1 | ||
| - uses: actions/checkout@v4 | ||
| - uses: subosito/flutter-action@v2 | ||
| with: | ||
| channel: 'stable' | ||
| cache: true | ||
| - name: Configure Flutter | ||
| run: | | ||
| flutter config --no-analytics | ||
| - run: flutter pub get | ||
| - run: flutter pub run webcrypto:setup | ||
| - run: flutter pub run test -p vm,chrome,firefox --coverage ./coverage | ||
| # Report collected coverage | ||
| - name: Convert coverage to lcov | ||
| run: dart run coverage:format_coverage -i ./coverage -o ./coverage/lcov.info --lcov --report-on lib/ | ||
| - uses: coverallsapp/github-action@v2 | ||
| with: | ||
| flag-name: windows | ||
| parallel: true | ||
| coverage: | ||
| name: Report to coveralls | ||
| runs-on: ubuntu-latest | ||
| timeout-minutes: 15 | ||
| needs: | ||
| - linux-coverage | ||
| - windows-coverage | ||
| - linux | ||
| - windows | ||
| steps: | ||
| - uses: coverallsapp/github-action@v2 | ||
| with: | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why do we need to change CI in this PR?
If we need to change CI, can we do it in an independent PR that discusses why are making those changes.