macos 14 #29
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: Assemble Ios Debug | |
# 触发工作流程的事件 | |
on: | |
push: | |
branches: [ main ] | |
tags: [ v* ] | |
pull_request: | |
branches: [ main ] | |
workflow_dispatch: | |
# 工作流环境变量 | |
env: | |
# 应用的application_id | |
APP_ID: ${{secrets.APP_ID}} | |
APP_NAME: Taro Demo | |
VERSION_NUMBER: 1.0.0 | |
BUILD_TYPE: debug | |
TEAM_ID: ${{secrets.TEAM_ID}} | |
PROVISIONING_PROFILE_SPECIFIER: ${{secrets.DEBUG_PROVISIONING_PROFILE_SPECIFIER}} | |
CODE_SIGN_IDENTITY: Apple Development | |
SIGNING_CERTIFICATE_P12_DATA: ${{secrets.DEBUG_SIGNING_CERTIFICATE_P12_DATA}} | |
SIGNING_CERTIFICATE_PASSWORD: ${{secrets.DEBUG_SIGNING_CERTIFICATE_PASSWORD}} | |
PROVISIONING_PROFILE_DATA: ${{secrets.DEBUG_PROVISIONING_PROFILE_DATA}} | |
jobs: | |
assemble: | |
runs-on: macos-14 | |
steps: | |
- name: Checkout Project | |
uses: actions/checkout@v2 | |
- uses: pnpm/action-setup@v2 | |
with: | |
version: 8 | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: 20 | |
cache: 'pnpm' | |
- run: pnpm install | |
- name: Cache Pods | |
uses: actions/cache@v2 | |
with: | |
path: ios/Pods | |
key: ${{ runner.os }}-pods-${{ hashFiles('**/Podfile.lock') }} | |
restore-keys: | | |
${{ runner.os }}-pods- | |
- name: Install pods | |
run: cd ios && pod update --no-repo-update | |
- name: Import signing certificate | |
env: | |
SIGNING_CERTIFICATE_P12_DATA: ${{ env.SIGNING_CERTIFICATE_P12_DATA }} | |
SIGNING_CERTIFICATE_PASSWORD: ${{ env.SIGNING_CERTIFICATE_PASSWORD }} | |
run: | | |
exec .github/scripts/import-certificate.sh | |
- name: Import provisioning profile | |
env: | |
PROVISIONING_PROFILE_DATA: ${{ env.PROVISIONING_PROFILE_DATA }} | |
run: | | |
exec .github/scripts/import-profile.sh | |
- name: Build app | |
env: | |
FL_APP_IDENTIFIER: ${{ env.APP_ID }} | |
FL_UPDATE_PLIST_DISPLAY_NAME: ${{ env.APP_NAME }} | |
FL_UPDATE_PLIST_PATH: taroDemo/Info.plist | |
FL_VERSION_NUMBER_VERSION_NUMBER: ${{ env.VERSION_NUMBER }} | |
FL_BUILD_NUMBER_BUILD_NUMBER: ${{ env.BUILD_NUMBER }} | |
FL_CODE_SIGN_IDENTITY: ${{ env.CODE_SIGN_IDENTITY }} | |
FL_PROVISIONING_PROFILE_SPECIFIER: ${{ env.PROVISIONING_PROFILE_SPECIFIER }} | |
FASTLANE_TEAM_ID: ${{ env.TEAM_ID }} | |
NODE_PATH: ${{ github.workspace }}/node_modules/.pnpm/node_modules:$NODE_PATH | |
run: | | |
cd ios | |
bundle update | |
bundle exec fastlane build_dev | |
- name: Upload Ios Products | |
uses: actions/upload-artifact@v2 | |
with: | |
name: app-${{ env.BUILD_TYPE }} | |
path: | | |
${{ github.workspace }}/ios/taroDemo.ipa | |
${{ github.workspace }}/ios/taroDemo.app.dSYM.zip | |
- name: Rename release assets | |
run: | | |
mv ios/taroDemo.ipa ios/app-${{ env.BUILD_TYPE }}.ipa | |
mv ios/taroDemo.app.dSYM.zip ios/app-${{ env.BUILD_TYPE }}.app.dSYM.zip | |
- name: Upload release assets | |
uses: softprops/action-gh-release@v1 | |
if: startsWith(github.ref, 'refs/tags/') | |
with: | |
prerelease: ${{ contains(github.ref, 'beta') }} | |
files: | | |
ios/app-${{ env.BUILD_TYPE }}.ipa | |
ios/app-${{ env.BUILD_TYPE }}.app.dSYM.zip | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |