как настроить GitLab CI для iOS проекта - PullRequest
1 голос
/ 29 марта 2019

Существует ли самый последний и достаточно подробный учебник о том, как настроить CI для проекта iOS с использованием Gitlab ?

Я нашел много учебных пособий (см. Список ниже) - но, похоже, что в GitLab все изменилось с тех пор, как были созданы эти учебные пособия. Или они просто не детализированы и достаточно хорошо объяснены для меня как для начинающего. Поэтому мне интересно, есть ли самое точное пошаговое объяснение о том, как настроить Gitlab-CI для iOS на Mac?

В частности, я ищу пошаговое руководство по Gitlab-CI для проекта iOS, использующего Fastlane и имеющего зависимости от Cocoapods.

Ниже вы найдете список учебных пособий и страниц, которые все говорят о настройке GitLab CI для проектов iOS.

(Я следовал за всеми из них - но ни один из них не является достаточно подробным для меня как новичка в CI или, на самом деле, более не точен для 2019 года и того, что представляет GitLab сегодня).

Для всех уроков я в конечном итоге получаю ошибки Gitlab Pipeline.

Вот список моих вопросов об открытом стеке, каждый из которых имеет свою собственную пробную версию Gitlab CI:

  • gitlab-runner register без sudo: я получаю «разрешение отказано» Stackoverflow Nr1

  • gitlab-runner register с докером: я получаю "root error" Stackoverflow Nr2

  • sudo gitlab-runner register с sudo: Я получаю «root error» Stackoverflow Nr 3

Конкретные вопросы:

  1. можете ли вы использовать "докер" с Gitlab для iOS? (или это должна быть "оболочка")
  2. вам нужно использовать слово "sudo" или нет для регистрации на gitlab-runner? (почему или почему нет)
  3. как вы устанавливаете разрешения на вашем Mac, чтобы Gitlab CI работал, когда вы пропускаете все слова sudo?

Вот список учебных пособий, которые объясняют Gitlab CI с проектами iOS:

1 Ответ

1 голос
/ 29 марта 2019

Вот лучшее руководство по настройке GitLab CI для iOS-проекта , которое я нашел.

Вот результаты, которые привели к успешному созданию GitLab CI для iOS-проекта:

  • Особенно важно признать, что, как и для iOS-проекта, Ваш GitLab CI должен быть зарегистрирован как исполнитель "оболочки" (не "докер").
  • Кроме того, вам не разрешается использовать какие-либо sudo при работе с gitlab-бегун. (нет sudo разрешено вообще, так как Apple хочет, чтобы вы иметь соединение в пользовательском режиме с GitLab (и не в системном режиме, как в докер или еще) ...

Шаги следующие:

gitlab-runner stop (необязательно, если уже были предыдущие испытания ...)

gitlab-runner uninstall (необязательно, если уже были предыдущие испытания ...)

gitlab-runner register \
  --non-interactive \
  --url "https://gitlab.com/" \
  --registration-token "ABCDEFG21sadfSAEGEAERE" \
  --description "MyApp runner with shell" \
  --tag-list ios \
  --executor "shell"

(не стесняйтесь использовать разные теги. Кроме того, токен можно найти на странице GitLab -> в разделе Настройки -> CI / CD -> Расширение бегунка)

gitlab-runner install

gitlab-runner start

Кроме того, оказалось, что ошибка «Отказано в доступе» на моем GitLab Pipeline не имеет ничего общего с самим GitLab - но из-за несоответствия версии Ruby на моем Mac, которое я подключил к gitlab-runner.

Мне удалось обновить мою версию Ruby с помощью этого поста (т.е. с использованием chruby). Существуют и другие возможности обновления Ruby на вашем Mac.

Важно понимать, что GitLab требует, чтобы ваш Mac имел стабильную среду Ruby.

...