Merge pull request #83 from argyle-systems/dependabot/github_actions/… #27
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: '14.2' | |
- 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@v2 | |
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: | | |
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 exportOptions.plist -exportPath build-demo | |
- name: Archive IPA | |
uses: actions/[email protected] | |
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 |