Сборка Flutter iOS в Центре приложений завершается с ошибкой: «Недопустимый файл Podfile: должен быть создан файл .xcconfig - PullRequest
0 голосов
/ 19 марта 2020

Я только что настроил свое приложение для сборки в Центре приложений, следуя статье здесь .

Хотя версия Android прекрасно собирается и разворачивается в Центре приложений Я получаю сообщение об ошибке при сборке iOS, показанной в отрывке из результатов сборки ниже:

==============================================================================
Task         : CocoaPods
Description  : Install CocoaPods dependencies for Swift and Objective-C Cocoa projects
Version      : 0.151.1
Author       : Microsoft Corporation
Help         : https://docs.microsoft.com/azure/devops/pipelines/tasks/package/cocoapods
==============================================================================
[command]/usr/local/lib/ruby/gems/2.6.0/bin/pod --version
1.9.1
[command]/usr/local/lib/ruby/gems/2.6.0/bin/pod install --repo-update

[!] Invalid `Podfile` file: Generated.xcconfig must exist. If you're running pod install manually, make sure flutter pub get is executed first.

 #  from /Users/runner/runners/2.165.2/work/1/s/bdstories/ios/Podfile:51
 #  -------------------------------------------
 #      unless File.exist?(generated_xcode_build_settings_path)
 >        raise "Generated.xcconfig must exist. If you're running pod install manually, make sure flutter pub get is executed first"
 #      end
 #  -------------------------------------------
##[error]The process '/usr/local/lib/ruby/gems/2.6.0/bin/pod' failed with exit code 1
##[error]The 'pod' command failed with error: The process '/usr/local/lib/ruby/gems/2.6.0/bin/pod' failed with exit code 1
##[section]Finishing: Pod install
##[section]Starting: Xcode build (signed)

Мой сценарий сборки:

#!/usr/bin/env bash
# Place this script in project/ios/.

# Fail if any command fails.
set -e

# Debug log.
set -x
cd ..

git clone -b beta https://github.com/flutter/flutter.git
export PATH=`pwd`/flutter/bin:$PATH

flutter channel beta
flutter doctor

echo "Installed flutter to `pwd`/flutter"

# Build the app.
flutter build ios --release --no-codesign

Я добавил flutter pub get, как упоминалось в ошибке, но это не имело значения. Также стоит отметить, что сборка работает нормально, когда я делаю это в Xcode локально. Я также могу без проблем развернуть встроенный архив в Testflight. Это просто процесс сборки App Center, с которым у меня проблемы.

Я немного растерялся и не могу найти никакой информации о том, как решить эту проблему. Я также новичок в CI / CD, поэтому любая помощь приветствуется!

Обновление

Я также попытался добавить следующее в скрипт, чтобы заставить Центр приложений запустите ту же версию Cocoapods, что и на моей локальной машине, но это не имеет значения для ошибки.

sudo gem uninstall cocoapods
sudo gem install cocoapods -v 1.9.1
pod setup

Ответы [ 3 ]

1 голос
/ 19 марта 2020

Проверьте ваш .gitIgnore. Возникла та же проблема из-за исключения файла из репозитория.

После добавления все прошло нормально.

Также будьте осторожны с путями, определенными для Flutter в вашем проекте.

0 голосов
/ 18 апреля 2020

Кажется, сейчас работает. Я думаю, что произошло обновление в процессе сборки App Center. Для вашей информации, я включил мой финальный скрипт пост-сборки ниже, на случай, если это будет полезно:

#!/usr/bin/env bash
#Place this script in project/ios/

# fail if any command fails
set -e
# debug log
set -x

cd ..
git clone -b beta https://github.com/flutter/flutter.git
export PATH=`pwd`/flutter/bin:$PATH

flutter channel beta
flutter doctor

echo "Installed flutter to `pwd`/flutter"

flutter build ios --release --no-codesign
0 голосов
/ 19 марта 2020

Попробуйте войти в папку IOS, затем pod install или pod update

в терминале

...