Пытаюсь запустить тесты через fastlane:
Код: Выделить всё
run_tests(workspace: 'Project.xcworkspace',
destination: "platform=macOS,id=#{deviceId}",
scheme: "Release",
clean: true)
$ xcodebuild -showBuildSettings -workspace Project.xcworkspace -scheme Release -destination Platform\=macOS,id\=01234567-0123456789B9001C 2>&1
[12:23:53]: Могло бы не читать настройки сборки «SUPPORTED_PLATFORMS», предполагая, что проект поддерживает только iOS.
[12:23:54]: Найден симулятор «iPhone 16 Pro (18.5)»
Тесты прекрасно работают в xcode на устройстве «My Mac (Designed for iPad)» на том же компьютере. Сравнение вывода xcodebuild -showdestinations в терминале:
$ xcodebuild -showdestinations -workspace Project.xcworkspace -scheme Release
Доступные места назначения для схемы «Release»:
{ Platform:macOS, Arch:arm64, вариант: Разработано для [iPad,iPhone], id:01234567-0123456789B9001C, name:Мой Mac
{ платформа:iOS, id:dvtdevice-DVTiPhonePlaceholder-iphoneos:placeholder, name:Любое устройство iOS
{ платформа: iOS Simulator, id:dvtdevice-DVTiOSDeviceSimulatorPlaceholder-iphonesimulator:placeholder, name:Any iOS Simulator Device
{ Platform:iOS Simulator, Arch:arm64, id:A7E98A79-B29B-4E9A-8103-ECBA55ABC0C6, OS:26.2, name:iPhone 17 Pro
Но когда я запускаю эту команду в gitlab runner, я получаю следующее:
$ xcodebuild -showdestinations -workspace Project.xcworkspace -scheme Release
Доступные места назначения для схемы «Выпуск»:
{ платформа: iOS, id:dvtdevice-DVTiPhonePlaceholder-iphoneos:placeholder, name:Любое устройство iOS
{ платформа:iOS Simulator, id:dvtdevice-DVTiOSDeviceSimulatorPlaceholder-iphonesimulator:placeholder, name:Любое устройство iOS Simulator
{ платформа:iOS Simulator, Arch:arm64, id:A7E98A79-B29B-4E9A-8103-ECBA55ABC0C6, OS:26.2, name:iPhone 17 Pro
Я подозреваю, что gitlab runner испортит какую-то переменную ENV, возможно. Поэтому я погуглил наиболее распространенные проблемы в Интернете и перепробовал все, что нашел:
LANG: "en_US.UTF-8"
LC_ALL: "en_US.UTF-8"
unset CFProcessPath
И ни одна из них не сработала.
Я также сравнил printenv в терминале и gitlab runner, ничего подозрительного не нашел.
Идеи закончились. Как мне устранить эту неполадку?
Подробнее здесь: https://stackoverflow.com/questions/798 ... n-specifie
Мобильная версия