Github アクションを使用してアプリをデプロイしようとしていますが、アプリにプライベート ポッドがあるため、多くの問題があります。これを解決するためのさまざまな提案を調べましたが、見つけた答えはどれもアプリの展開に役立ちませんでした。私のスクリプトは次のようになります。
name: deploy
on:
push:
branches: [ develop ]
tags: [ v* ]
jobs:
deploy:
runs-on: macos-latest
steps:
- name: Checkout project
uses: actions/checkout@v2
- name: Set environment variables from project settings
run: |
exec .github/scripts/set-env-from-xcodeproj.sh
- name: Import signing certificate
env:
SIGNING_CERTIFICATE_P12_DATA: ${{ secrets.SIGNING_CERTIFICATE_P12_DATA }}
SIGNING_CERTIFICATE_PASSWORD: ${{ secrets.SIGNING_CERTIFICATE_PASSWORD }}
run: |
exec .github/scripts/import-certificate.sh
- name: Import provisioning profile
env:
PROVISIONING_PROFILE_DATA: ${{ secrets.PROVISIONING_PROFILE_DATA }}
run: |
exec .github/scripts/import-profile.sh
- name: Credentials setup
run: |
git config --global credential.helper store
echo "https://username:${{ secrets.GIT_TOKEN }}@github.com" > ~/.git-credentials
- name: Dependencies install
run: |
pod install
- name: Build app
run: |
fastlane run build_app
- name: Upload build artifacts
uses: actions/upload-artifact@v2
with:
name: build.log
path: ~/Library/Logs/gym/*.log
- name: Upload release assets
if: startsWith(github.ref, 'refs/tags/v')
uses: softprops/action-gh-release@v1
with:
files: |
${{ env.PRODUCT_NAME }}.ipa
${{ env.PRODUCT_NAME }}.app.dSYM.zip
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload app to App Store Connect
if: startsWith(github.ref, 'refs/tags/v')
env:
APP_STORE_CONNECT_USERNAME: ${{ secrets.APP_STORE_CONNECT_USERNAME }}
APP_STORE_CONNECT_PASSWORD: ${{ secrets.APP_STORE_CONNECT_PASSWORD }}
run: |
xcrun altool --upload-app -t ios -f "$PRODUCT_NAME.ipa" -u "$APP_STORE_CONNECT_USERNAME" -p "$APP_STORE_CONNECT_PASSWORD"
そして私のポッドファイル:
# Uncomment the next line to define a global platform for your project
platform :ios, '13.0'
source 'https://github.com/organization/privatepod.git'
source 'https://github.com/CocoaPods/Specs.git'
post_install do |installer_representation|
installer_representation.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['ONLY_ACTIVE_ARCH'] = 'NO'
config.build_settings['BUILD_LIBRARY_FOR_DISTRIBUTION'] = 'YES'
end
end
end
target 'Target' do
# Comment the next line if you don't want to use dynamic frameworks
use_frameworks!
# Pods for LHTest
pod 'privatepodname', '~>2.2.6'
pod 'Firebase/Core'
pod 'Firebase/Analytics'
pod 'Firebase/Messaging'
pod 'Firebase/Crashlytics'
end
「致命的です: リモート リポジトリから読み取れませんでした」というエラーが表示されます。正しいアクセス権があることを確認してください。
pod repo add コマンドを使用してリポジトリを手動で追加する方法も試しましたが、それでもエラーが発生します。私の理解では、スクリプトからの「Credentials setup」行は、私の github アカウントを認証し、プライベート リポジトリをインストールできるようにするのに十分なはずですが、機能していないようです。