iosWebViewFix/.github/workflows/ios-integration-test.yml

69 lines
2.2 KiB
YAML

# Name of your workflow.
name: iOS Integration Tests
on:
# Trigger the workflow on push or pull request,
# but only for the main branch
push:
branches:
- master
pull_request:
branches:
- master
# A workflow run is made up of one or more jobs.
jobs:
# id of job, a string that is unique to the "jobs" node above.
ios_integration_tests:
# Creates a build matrix for your jobs. You can define different
# variations of an environment to run each job in.
strategy:
# A set of different configurations of the virtual
# environment.
# matrix:
# When set to true, GitHub cancels all in-progress jobs if any
# matrix job fails.
fail-fast: false
# The type of machine to run the job on.
runs-on: macOS-latest
timeout-minutes: 60
# Contains a sequence of tasks.
steps:
# A name for your step to display on GitHub.
- name: "Start Simulator"
run: |
xcrun simctl list
xcrun simctl create Flutter-iPhone com.apple.CoreSimulator.SimDeviceType.iPhone-12 com.apple.CoreSimulator.SimRuntime.iOS-14-3 | xargs xcrun simctl boot
# The branch or tag ref that triggered the workflow will be
# checked out.
# https://github.com/actions/checkout
- uses: actions/checkout@v2
# Sets up cache
- name: Cache multiple paths
uses: actions/cache@v2
with:
path: |
~/.pub-cache
~/.npm
key: ${{ runner.os }}-pub-and-npm-cache
# Sets up a flutter environment.
# https://github.com/marketplace/actions/flutter-action
- name: "Install Flutter"
uses: subosito/flutter-action@v1.4.0
with:
channel: 'dev' # 'stable' or 'dev' or 'beta'
- name: "Change Flutter channel to master"
run: |
flutter channel master
flutter upgrade
- uses: actions/setup-node@v2
with:
node-version: '14'
- name: "Install npm dependencies"
run: |
cd ./nodejs_server_test_auth_basic_and_ssl
npm install
cd ..
- name: "Run iOS Flutter Integration Test"
run: |
flutter pub get
flutter devices
./scripts/test.sh $(ipconfig getifaddr en0)