Пример.travis.yml для проектов iOS на основе Cocoapods
У меня есть этот очень простой проект iOS. Он использует Cocoapods для управления зависимостями и включает AFNetworking в качестве одной из своих зависимостей. В настоящее время мой код проекта просто выполняет простой http GET-запрос, и тест (написанный с использованием Specta) проверяет, успешно ли он выполнен.
Теперь я пытаюсь сделать это с Travis-CI. Я уже проверил учебник по xctool CI и руководство по объективному CI от Travis-CI, мой текущий .travis-ci.yml:
language: objective-c
xcode_project: Foobar.xcodeproj
xcode_schema: Foobar
Последние строки вывода из консоли CI:
Команда "echo " Ознакомьтесь с нашей документацией для получения дополнительной информации: http://about.travis-ci.org/docs/user/languages/objective-c/"" с выходом 0.
Готово. Ваша сборка завершена с 0.
Мне кажется, что ничего не было проверено. С моим.travis.yml определенно что-то не так. Итак, мои вопросы:
- Существует файл.xworkspace, сгенерированный Cocoapods, поэтому какой из них мне использовать в.travis.yml,.xcodeproj или.workspace?
- Какую схему использовать,
Foobar
или жеFoobarTests
? - Нужно ли дополнительно указывать
script: xctool ...
команда? - Из учебника xctool CI:
Нажмите кнопку + и добавьте каждую зависимость в проект. CocoaPods появится в виде статической библиотеки с именем Pods.
Я не могу добавить Pods
проект в целом, а точнее каждый независимый проект. Это правильно? И значит ли это, что я должен делать каждый раз, когда добавляю библиотеку в Podfile?
1 ответ
Я понял это с помощью комментария @Schemetrical выше и обзора моего.travis.yml. Там оказывается опечатка: xcode_schema
должно быть xcode_scheme
...
В итоге вот мой .travis.yml:
language: objective-c
xcode_workspace: Foobar.xcworkspace
xcode_scheme: Foobar
Для сгенерированных Cocoapods сгенерированных проекта / рабочего пространства, нет такой схемы под названием FoobarTests
, а точнее только один по имени Foobar
, Так что это должно ответить на вопросы 1-3 выше.
Для вопроса 4 я добавил только две дополнительные цели: Pods-Foobar
а также Pods-FoobarTests
, и они должны содержать все зависимости от вашего Podfile.