Почему моя команда xcodebuild иногда терпит неудачу, а иногда и успешно? - PullRequest
0 голосов
/ 30 января 2020

Фон

Я настраиваю ночную сборку CI для проекта iOS. С момента обновления до Catalina наша сборка стала очень ненадежной: шаг архивирования иногда завершается успешно, а иногда - неудачно. Запуск напрямую через Терминал, в отличие от Дженкинса, кажется более надежным, но в целом также довольно надежно дает сбой.

Проблема

Рабочая область включает в себя фреймворки, предназначенные только для архитектуры arm64 однако на шаге архивирования часто происходит сбой:

Undefined symbols for architecture x86_64

или

ld: symbol(s) not found for architecture x86_64

Что было опробовано

  1. Очистка папка с производными данными и очистка tra sh перед сборкой

  2. Очистка проекта перед каждой сборкой

  3. Добавление LD_VERIFY_BITCODE со значением NO

  4. Обеспечение допустимости только допустимых архитектур содержит arm64, arm64e, armv7, armv7s

  5. Перезагрузка компьютера перед каждой сборкой

  6. Установка Build Active Architecture Only на NO для отладки и выпуска

Используемая команда

xcodebuild clean build test -scheme [ProjectName] -workspace [ProjectName].xcworkspace/ -archivePath target/[ProjectName]-1.0.0-SNAPSHOT.xcarchive archive -destination platform=iOS,id=[Hardware iPhone device ID]-enableCodeCoverage YES -derivedDataPath ./ios-coverage/

Используемое программное обеспечение

xcodebuild 11.3.1 11C504 macOS Catalina 10.15.3

...