首页 > 解决方案 > Github Actions - PhaseScriptExecution React-Native 0.66.1

问题描述

我有一个用 React-Native 制作的应用程序,在我的本地机器上编译时它运行良好。

我试图在 Github Actions 上运行相同的应用程序,但没有成功。

  set -o pipefail && 
  xcodebuild -workspace ios/appcardview.xcworkspace \
  -scheme appcardview \
  -destination 'generic/platform=iOS' \
  -archivePath appcardview.xcarchive \
  DEVELOPMENT_TEAM='XXXXXXXXXXXX' \
  clean archive | xcpretty
▸ Clean Succeeded
▸ Running script '[CP] Copy XCFrameworks'
** ARCHIVE FAILED **


The following build commands failed:
    PhaseScriptExecution [CP]\ Copy\ XCFrameworks /Users/runner/Library/Developer/Xcode/DerivedData/appcardview-gbsbuuvggegwokbqlthgedyztsge/Build/Intermediates.noindex/ArchiveIntermediates/appcardview/IntermediateBuildFilesPath/Pods.build/Release-iphoneos/EXUpdates.build/Script-8D1D31EE8FEE93613FADF92E1FC99890.sh (in target 'EXUpdates' from project 'Pods')
(1 failure)
Error: Process completed with exit code 65.

这是我的操作文件的一部分。我只放了相关部分。

name: iOS - Staging

on:
  workflow_dispatch:
  push:
    branches:
      - master

env:
  DEVELOPER_DIR: /Applications/Xcode_12.5.1/Contents/Developer
  TMP_KEYCHAIN_PASSWORD: ${{ secrets.TMP_KEYCHAIN_PASSWORD }}
  TMP_P12_PASSWORD: ${{ secrets.TMP_P12_PASSWORD }}

jobs:
  build:
    runs-on: macos-11
    env:
      GITHUB_REPOSITORY: ${{ github.repository }}
      ENVIRONMENT: production
      AWS_REGION: sa-east-1

    strategy:
      matrix:
        node-version: [12.17.0]

    steps:
      - uses: actions/checkout@v2

      - name: Using Node.js ${{ matrix.node-version }}
        uses: actions/setup-node@v1
        with:
          node-version: ${{ matrix.node-version }}
          cache: 'npm'

      - name: Install NPM dependencies if not cached
        run: |
            npm install

      - name: Install Bundle IOS if not cached
        working-directory: ./ios
        run: |
          bundle install
        
      - name: Install Pods if not cached
        run: |
          cd ios
          pod install

      - name: Create-Keychain
        run: |
          KEYCHAIN_PATH=$RUNNER_TEMP/app-signing.keychain-db
          security create-keychain -p "${{ env.TMP_KEYCHAIN_PASSWORD }}" $KEYCHAIN_PATH

      - name: Install keychain certificates
        run: |
          KEYCHAIN_PATH=$RUNNER_TEMP/app-signing.keychain-db
          security list-keychains -s $KEYCHAIN_PATH
          security default-keychain -s $KEYCHAIN_PATH
          security unlock-keychain -p "${{ env.TMP_KEYCHAIN_PASSWORD }}" $KEYCHAIN_PATH
          security import ios/deploy/FF2H7P5JFK.p12 -P "${{ env.TMP_P12_PASSWORD }}" -A -t cert -f pkcs12 -k $KEYCHAIN_PATH
          security import ios/deploy/FF2H7P5JFK.cer -k ${KEYCHAIN_PATH}
          security import ios/deploy/C5BFYTTL8L.p12 -P "${{ env.TMP_P12_PASSWORD }}" -A -t cert -f pkcs12 -k $KEYCHAIN_PATH
          security import ios/deploy/C5BFYTTL8L.cer -k ${KEYCHAIN_PATH}
          security set-key-partition-list -S apple-tool:,apple: -s -k "" $KEYCHAIN_PATH
          security set-keychain-settings -lut 21600 $KEYCHAIN_PATH
          security list-keychain -d user -s $KEYCHAIN_PATH

          UUID=`/usr/libexec/PlistBuddy -c 'Print :UUID' /dev/stdin <<< $(security cms -D -i ios/deploy/Development_com.qgx.baas.canalfacil.mobileprovision)`
          mkdir -p ~/Library/MobileDevice/Provisioning\ Profiles
          cp $MOBILE_PROVISION ~/Library/MobileDevice/Provisioning\ Profiles/$UUID.mobileprovision

          UUID=`/usr/libexec/PlistBuddy -c 'Print :UUID' /dev/stdin <<< $(security cms -D -i ios/deploy/AppStore_com.qgx.baas.canalfacil.mobileprovision)`
          mkdir -p ~/Library/MobileDevice/Provisioning\ Profiles
          cp $MOBILE_PROVISION ~/Library/MobileDevice/Provisioning\ Profiles/$UUID.mobileprovision

      - name: Select Xcode
        run: sudo xcode-select -switch /Applications/Xcode_12.5.1.app

      - name: Build App
        run: | 
          set -o pipefail && 
          xcodebuild -workspace ios/appcardview.xcworkspace \
          -scheme appcardview \
          -destination "" \
          -archivePath appcardview.xcarchive \
          DEVELOPMENT_TEAM="XXXXXXXXXXXX" \
          clean archive | xcpretty

你能帮助我吗?

标签: xcodereact-nativecocoapodsgithub-actions

解决方案


推荐阅读