Skip to content

Update Rust

Update Rust #150

Workflow file for this run

name: iOS
on:
push:
branches: [ main, "version-*" ]
pull_request:
branches: [ "main" ]
types: [ labeled, synchronize, opened, reopened ]
env:
CARGO_TERM_COLOR: always
concurrency:
group: ${{ github.ref == 'refs/heads/main' && format('ios-build-main-{0}', github.sha) || format('ios-build-pr-{0}', github.ref) }}
cancel-in-progress: true
jobs:
build:
if: |
github.event_name == 'push' ||
(github.event_name == 'pull_request' && contains(github.event.pull_request.labels.*.name, 'iOS'))
runs-on: macos-14
steps:
- uses: actions/checkout@v4
- name: Install xcresultparser
run: brew install a7ex/homebrew-formulae/xcresultparser
- name: Rust & Cargo cache
uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- name: Install Rust
uses: actions-rs/toolchain@v1
with:
toolchain: 1.76
profile: minimal
override: true
- name: Install targets
run: make targets-ios
- name: Set Xcode 15.4
run: sudo xcode-select -switch /Applications/Xcode_15.4.app
- name: Build framework & bindings
run: make ios
- name: Extract branch name
shell: bash
run: echo "##[set-output name=branch;]$(echo ${GITHUB_REF#refs/heads/})"
id: get_branch
- name: Unit test coverage
working-directory: platforms/ios/example
run: exec ./ios-test-coverage.sh
- name: Collect coverage
working-directory: platforms/ios/example
run: xcresultparser -q -o cobertura -t Wysiwyg -p $(pwd) tests.xcresult > tests.xml
- name: Upload unit test coverage to Codecov
uses: codecov/codecov-action@v4
with:
files: ./platforms/ios/example/tests.xml
fail_ci_if_error: true
flags: unittests-ios, unittests
# https://github.com/codecov/codecov-action/issues/557#issuecomment-1216749652
token: ${{ secrets.CODECOV_TOKEN }}
- name: UI test coverage
working-directory: platforms/ios/example
run: exec ./ios-ui-test-coverage.sh
- name: Collect coverage
working-directory: platforms/ios/example
run: xcresultparser -q -o cobertura -t Wysiwyg -p $(pwd) ui-tests.xcresult > ui-tests.xml
- name: Upload ui test coverage to Codecov
uses: codecov/codecov-action@v4
with:
files: ./platforms/ios/example/ui-tests.xml
fail_ci_if_error: true
flags: uitests-ios, uitests
# https://github.com/codecov/codecov-action/issues/557#issuecomment-1216749652
token: ${{ secrets.CODECOV_TOKEN }}