Skip to content

IOS-8557 Fact0rn integration blockchain #11372

IOS-8557 Fact0rn integration blockchain

IOS-8557 Fact0rn integration blockchain #11372

Workflow file for this run

name: Tests
on:
pull_request:
branches:
- 'releases/**'
- 'release'
- 'develop'
- 'master'
types:
- opened
- reopened
- synchronize
- ready_for_review
merge_group:
types:
- checks_requested
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
check_if_pr_has_always_run_tests_label:
name: Check if the PR has always_run_tests label
runs-on: ubuntu-latest
outputs:
has_always_run_tests_label: ${{ steps.always_run_tests_label_check.outputs.label_check == 'success' }}
steps:
- id: always_run_tests_label_check
if: ${{ github.event_name != 'workflow_dispatch' }}
# https://hub.docker.com/r/agilepathway/pull-request-label-checker/tags
uses: docker://agilepathway/pull-request-label-checker@sha256:da7c8677e87239522e0c6869ecc4c86d6b7db8b6859ad332b8b1c2129b76177b # v1.6.56 linux/amd64
with:
one_of: always_run_tests
repo_token: ${{ secrets.GITHUB_TOKEN }}
allow_failure: true
test:
name: Run unit tests
runs-on: macos-15
needs: check_if_pr_has_always_run_tests_label
if: github.event.pull_request.draft == false || needs.check_if_pr_has_always_run_tests_label.outputs.has_always_run_tests_label == 'true'
steps:
- name: Checkout
uses: actions/checkout@v3
with:
submodules: true
token: ${{ secrets.GH_MOBILE_PAT }}
# When using Github runner images, the preferred way of setting the Ruby version is to use this official action instead of using rvm/rbenv
- name: Install Ruby
uses: ruby/setup-ruby@a2bbe5b1b236842c1cb7dd11e8e3b51e0a616acc # v1.202.0
# Skipping Ruby installation since it has been already installed by an action above
- name: Install required dependencies
run: ./bootstrap.sh --skip-ruby
- name: Test SPM modules
run: bundle exec fastlane test_modules
- name: Test host app
run: bundle exec fastlane test
check_bsdk_example_buildable:
name: Check BSDK example project
runs-on: [self-hosted, active] # This target requires code signing, so we use self-hosted runners
needs: check_if_pr_has_always_run_tests_label
if: github.event.pull_request.draft == false || needs.check_if_pr_has_always_run_tests_label.outputs.has_always_run_tests_label == 'true'
steps:
- name: Checkout
uses: actions/checkout@v3
with:
submodules: true
token: ${{ secrets.GH_MOBILE_PAT }}
- name: Install required dependencies
run: ./bootstrap.sh
- name: Build BSDK example
run: |
# The initialization of rbenv is required before every `bundle` call since Gihub Actions spawns each 'run' step in a separate process
eval "$(rbenv init - bash)"
bundle exec fastlane check_bsdk_example_buildable