Skip to content

Add flutter native splash #1078

Add flutter native splash

Add flutter native splash #1078

name: IOS CI
on:
push:
branches: [master, f-droid]
tags:
- "*"
pull_request:
branches: [master, f-droid]
env:
NODE_VERSION: 16.13.1
JAVA_VERSION: 12.x
ARTIFACT_PATH: ./screenshots
jobs:
cancel_previous_runs:
name: Cancel Previous Runs
runs-on: ubuntu-20.04
steps:
- uses: styfle/cancel-workflow-action@0.11.0
with:
access_token: ${{ secrets.GITHUB_TOKEN }}
ios_device_test:
runs-on: macos-latest
timeout-minutes: 60
strategy:
matrix:
include:
- device: "iPhone 11 Pro Max"
record_video: true
- device: "iPhone 8 Plus"
record_video: false
- device: "iPad Pro (12.9-inch) (3rd generation)"
record_video: false
- device: "iPad Pro (12.9-inch) (2nd generation)"
record_video: false
fail-fast: false
steps:
# Setup Environment
- uses: actions/checkout@v3
- name: "Prepare environment for ios"
working-directory: ./scripts
run: ./ios_init_env.sh
- uses: actions/setup-java@v3
with:
java-version: ${{ env.JAVA_VERSION }}
distribution: "zulu"
- name: Install flutter wrapper
run: ./scripts/install_flutter_wrapper.sh
- name: "Create Simulator if iPad Pro 2nd gen"
if: ${{ matrix.device == 'iPad Pro (12.9-inch) (2nd generation)' }}
run: xcrun simctl create "iPad Pro (12.9-inch) (2nd generation)" "com.apple.CoreSimulator.SimDeviceType.iPad-Pro--12-9-inch---2nd-generation-" "com.apple.CoreSimulator.SimRuntime.iOS-16-2"
- name: "Create Simulator if iPad Pro 3rd gen"
if: ${{ matrix.device == 'iPad Pro (12.9-inch) (3rd generation)' }}
run: xcrun simctl create "iPad Pro (12.9-inch) (3rd generation)" "com.apple.CoreSimulator.SimDeviceType.iPad-Pro--12-9-inch---3rd-generation-" "com.apple.CoreSimulator.SimRuntime.iOS-16-2"
# JS Stuff
- uses: actions/setup-node@v3
with:
node-version: ${{ env.NODE_VERSION }}
- name: Melos Install
run: ./scripts/install_melos.sh
- name: Melos Bootstrap
run: ./flutterw pub global run melos bootstrap
- name: "Build JS"
run: ./flutterw pub global run melos yarn-build
- name: Start colima a docker runtime for MacOs
run: |
brew install docker
colima start
- name: Run encointer-node
run: ./scripts/docker_run_encointer_node_notee.sh &
- name: Bootstrap Demo Community
run: ./scripts/docker_run_encointer_client_bootstrap_demo_community.sh
- name: "Start Simulator"
working-directory: ./scripts
env:
DEVICE_ID: ${{ matrix.device }}
run: source ./ios_emulator.sh
- name: Run integration tests with printscreens in all languages
if: startsWith(github.ref, 'refs/tags/')
run: ./scripts/multi_language_screenshot_ci_test.sh
env:
TEMP_DIR: ${{ env.ARTIFACT_PATH }}
RECORD: ${{ matrix.record_video }}
- name: Run integration tests with printscreens in en only
if: startsWith(github.ref , 'refs/tags/') != true
run: ./scripts/ios_integration_test.sh
env:
TEMP_DIR: ${{ env.ARTIFACT_PATH }}
RECORD: ${{ matrix.record_video }}
- name: "Upload screenshots and recording"
if: always()
uses: actions/upload-artifact@v3
with:
name: ${{ matrix.device }}
path: ${{ env.ARTIFACT_PATH }}