Allow project to compile with Xcode 16.1 #3628
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build alpha release | |
on: | |
# Triggers the workflow on any pull request | |
pull_request: | |
types: [ labeled, synchronize, opened, reopened ] | |
env: | |
# Make the git branch for a PR available to our Fastfile | |
MX_GIT_BRANCH: ${{ github.event.pull_request.head.ref }} | |
jobs: | |
build: | |
# Only run for PRs that contain the trigger label. The action will fail for forks due to | |
# missing secrets, but there's no need to handle this as it won't run automatically. | |
if: contains(github.event.pull_request.labels.*.name, 'Trigger-PR-Build') | |
name: Release | |
runs-on: macos-14 | |
concurrency: | |
# Only allow a single run of this workflow on each branch, automatically cancelling older runs. | |
group: alpha-${{ github.head_ref }} | |
cancel-in-progress: true | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: 'true' | |
# Common cache | |
# Note: GH actions do not support yaml anchor yet. We need to duplicate this for every job | |
- name: Cache CocoaPods libraries | |
uses: actions/cache@v2 | |
with: | |
path: Pods | |
key: ${{ runner.os }}-pods-${{ hashFiles('**/Podfile.lock') }} | |
restore-keys: | | |
${{ runner.os }}-pods- | |
- name: Cache Ruby gems | |
uses: actions/cache@v2 | |
with: | |
path: vendor/bundle | |
key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }} | |
restore-keys: | | |
${{ runner.os }}-gems- | |
# Make sure we use the latest version of MatrixSDK | |
- name: Reset MatrixSDK pod | |
run: rm -rf Pods/MatrixSDK | |
# Common setup | |
# Note: GH actions do not support yaml anchor yet. We need to duplicate this for every job | |
- name: Brew bundle | |
run: brew bundle | |
- name: Bundle install | |
run: | | |
bundle config path vendor/bundle | |
bundle install --jobs 4 --retry 3 | |
# Import alpha release private signing certificate | |
- name: Import signing certificate | |
uses: apple-actions/import-codesign-certs@v1 | |
with: | |
p12-file-base64: ${{ secrets.ALPHA_CERTIFICATES_P12 }} | |
p12-password: ${{ secrets.ALPHA_CERTIFICATES_P12_PASSWORD }} | |
# Main step | |
# The Ad-hoc release link will be referenced as 'DIAWI_FILE_LINK' | |
# and QR link as 'DIAWI_QR_CODE_LINK' when the Diawi upload succeed | |
- name: Build Ad-hoc release and send it to Diawi | |
run: bundle exec fastlane alpha | |
env: | |
APPSTORECONNECT_KEY_ID: ${{ secrets.APPSTORECONNECT_KEY_ID }} | |
APPSTORECONNECT_KEY_ISSUER_ID: ${{ secrets.APPSTORECONNECT_KEY_ISSUER_ID }} | |
APPSTORECONNECT_KEY_CONTENT: ${{ secrets.APPSTORECONNECT_KEY_CONTENT }} | |
DIAWI_API_TOKEN: ${{ secrets.DIAWI_API_TOKEN }} | |
SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} | |
- name: Add or update PR comment with Ad-hoc release informations | |
uses: NejcZdovc/comment-pr@v1 | |
with: | |
message: | | |
:iphone: Scan the QR code below to install the build for this PR. | |
:lock: This build is for internal testing purpose. Only devices listed in the ad-hoc provisioning profile can install Element Alpha. | |
![QR code](${{ env.DIAWI_QR_CODE_LINK }}) | |
If you can't scan the QR code you can install the build via this link: ${{ env.DIAWI_FILE_LINK }} | |
# Enables to identify and update existing Ad-hoc release message on new commit in the PR | |
identifier: "GITHUB_COMMENT_ADHOC_RELEASE" | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |