Build iOS project #15
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 project | |
on: | |
workflow_dispatch: | |
jobs: | |
build_ionic: | |
name: Build Ionic project | |
runs-on: ubuntu-latest | |
steps: | |
- name: "Check out code" | |
uses: actions/checkout@v3 | |
- name: "Setup dependencies: Node" | |
uses: actions/setup-node@v4 | |
- name: "Install Node dependencies" | |
run: | | |
npm install -g yarn | |
npm install -g @angular/cli | |
npm install -g @ionic/cli | |
npm install -g @capacitor/core | |
npm install -g @capacitor/cli | |
yarn install | |
- name: "Build Ionic app" | |
run: ionic build -c production | |
- name: "Sync iOS project" | |
run: cap sync ios | |
- name: "Pack project" | |
run: zip -r ios_project.zip ios | |
- name: "Upload artifact" | |
uses: actions/upload-artifact@v4 | |
with: | |
name: "build_${{github.run_number}}" | |
compression-level: 0 | |
path: ios_project.zip | |
overwrite: true | |
if-no-files-found: error | |
build_xcode_project: | |
name: Build Xcode project | |
needs: build_ionic | |
runs-on: macos-14 | |
steps: | |
- name: "Download artifact" | |
uses: actions/download-artifact@v4 | |
with: | |
name: "build_${{github.run_number}}" | |
- name: "Unpack artifact" | |
run: "unzip ios_project.zip" | |
- name: "Install SSH key" | |
uses: webfactory/[email protected] | |
with: | |
ssh-private-key: ${{ secrets.FASTLANE_CERTIFICATES_KEY }} | |
- name: "Build project" | |
env: | |
BUILD_NUMBER: ${{github.run_number}} | |
VERSION_NUMBER: "1.0.0" | |
KEY_ID: ${{secrets.APPSTORE_KEY_ID}} | |
ISSUER_ID: ${{secrets.APPSTORE_KEY_ISSUER_ID}} | |
KEY_CONTENT: ${{secrets.APPSTORE_KEY_CONTENT}} | |
MATCH_PASSWORD: ${{secrets.MATCH_PASSWORD}} | |
run: | | |
cd ios/App | |
which bundle || gem install bundler | |
bundle config path vendor/bundle | |
bundle install | |
bundle exec fastlane build | |
- name: "Upload artifact" | |
uses: actions/upload-artifact@v4 | |
with: | |
name: "macro-deck-client.ipa" | |
compression-level: 0 | |
path: macro-deck-client.ipa | |
overwrite: true | |
if-no-files-found: error | |