Merge pull request #116 from argyle-systems/dependabot/github_actions… #79
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-ios-ipa | |
on: | |
workflow_dispatch: | |
push: | |
branches: [master] | |
jobs: | |
build: | |
runs-on: macos-latest | |
steps: | |
- uses: maxim-lobanov/[email protected] | |
with: | |
xcode-version: '15.0' | |
- uses: actions/[email protected] | |
- name: Install npm dependencies and add dummy version to package.json | |
run: | | |
sed -i.bak "s/%LINK_VERSION%/0.0.1/g" package.json | |
cd example | |
npm install | |
- name: Overwrite index.js | |
run: | | |
cd example | |
rm index.js | |
mv json-demo-build.js index.js | |
- name: Overwrite node module | |
run: | | |
rsync -Rr . example/node_modules/@argyleio/argyle-plugin-react-native | |
- name: Import Codesigning Certificate | |
uses: apple-actions/import-codesign-certs@v3 | |
with: | |
p12-file-base64: ${{ secrets.ARGYLE_LINK_IOS_SIGNING_CERT_P12 }} | |
p12-password: ${{ secrets.ARGYLE_LINK_IOS_SIGNING_CERT_PASS }} | |
- name: Install Provisioning Profile | |
uses: akiojin/[email protected] | |
with: | |
base64: ${{ secrets.ARGYLE_LINK_IOS_SIGNING_PROVISIONING }} | |
- name: Cocoapods install | |
run: | | |
sudo gem install cocoapods -v 1.15.2 | |
cd example/ios | |
pod install | |
- name: Build App | |
run: | | |
cd example/ios | |
xcodebuild -workspace LinkReactNative.xcworkspace -scheme LinkReactNative -configuration Release -sdk iphoneos -archivePath demo.xcarchive archive CODE_SIGN_STYLE=Manual | |
xcodebuild -exportArchive -archivePath ./demo.xcarchive -exportOptionsPlist ../../.github/configs/exportOptions.plist -exportPath build-demo | |
- name: Archive IPA | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ipa-LinkReactNative | |
path: example/ios/build-demo/LinkReactNative.ipa | |
- name: Upload app to browserstack | |
run: | | |
curl \ | |
-u ${{ secrets.ARGYLE_MOBILE_RUN_BS_USER }}:${{ secrets.ARGYLE_MOBILE_RUN_BS_KEY }} \ | |
-X POST "https://api-cloud.browserstack.com/app-automate/upload" \ | |
-F "file=@example/ios/build-demo/LinkReactNative.ipa" \ | |
-F 'data={"custom_id": "ios_react_latest"}' | |
trigger-auto-tests: | |
needs: build | |
runs-on: ubuntu-latest | |
steps: | |
- uses: convictional/[email protected] | |
with: | |
owner: argyle-systems | |
repo: argyle-qa-mobile | |
workflow_file_name: test_dev_rn_ios.yaml | |
ref: master | |
client_payload: '{"id": "auto-trigger-ios-rn-tests"}' | |
github_token: ${{ secrets.ARGYLE_LINK_QA_WORKFLOW_TRIGGER }} | |
wait_workflow: false |