Фон
Я настраиваю ночную сборку CI для проекта iOS. С момента обновления до Catalina наша сборка стала очень ненадежной: шаг архивирования иногда завершается успешно, а иногда - неудачно. Запуск напрямую через Терминал, в отличие от Дженкинса, кажется более надежным, но в целом также довольно надежно дает сбой.
Проблема
Рабочая область включает в себя фреймворки, предназначенные только для архитектуры arm64 однако на шаге архивирования часто происходит сбой:
Undefined symbols for architecture x86_64
или
ld: symbol(s) not found for architecture x86_64
Что было опробовано
Очистка папка с производными данными и очистка tra sh перед сборкой
Очистка проекта перед каждой сборкой
Добавление LD_VERIFY_BITCODE со значением NO
Обеспечение допустимости только допустимых архитектур содержит arm64, arm64e, armv7, armv7s
Перезагрузка компьютера перед каждой сборкой
Установка 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