Как правильно настроить среду jenkins - PullRequest
0 голосов
/ 30 января 2019

У меня новый сервер сборки, и мне нужно настроить jenkins там.Поэтому я создал первого пользователя на Mac mini и использовал его для установки Jenkins на машину.

Затем Дженкинс создал другого пользователя (Дженкинса) на Mac Mini.Я подумал, что правильный путь - войти в систему под этим пользователем Jenkins (с правами администратора) и подготовить среду сборки под этим пользователем Jenkins.

Но я не могу установить Visual Studio для MAC, не могу установить SourceTree ...bcs Несмотря на то, что у Дженкинса есть права администратора, я получаю сообщение

«У вас нет прав для открытия приложения« Установите Visual Studio для Mac », обратитесь к администратору ...».

Но, как я уже сказал, пользователь Jenkins - это пользователь Admin.Так я делаю это неправильно?Какой пользователь должен подготовить все инструменты сборки?И если предполагается, что это был первый пользователь, которого я создал (после первой загрузки Mac mini), как тогда разрешить Jenkins использовать приложения?Когда я попытался сделать это на своем MacBook, Дженкинс не смог использовать некоторые инструменты сборки, очевидно, у bcs не было разрешений для этого.

Итак, как правильно настроить среду jenkins, чтобы я мог устанавливать любые инструменты, которые мне нужны, и Дженкинс мог бы использовать их во время сборки / развертывания?

Любая помощь приветствуется, все руководства о jenkins говорят о пользователе jenkins, но ни одна из них не дала мне понять, как лучше всего это настроить.

1 Ответ

0 голосов
/ 30 января 2019

Мои 2 цента.

Я не работал с MAC.Поэтому некоторые из моих предположений могут быть неверными или предложения могут быть неприменимы к вам.

Я установил Jenkins в основном для Linux и пару раз для Windows.Я использовал для установки Jenkins, используя RPM-пакет, который после установки создаст пользователя и группу jenkins.

  • Для запуска / остановки / перезапуска я всегда использую sudo, так как Jenkins установленкак сервис.
  • Другие инструменты, связанные со сборкой, такие как Java, Maven и т. д., я всегда удостоверяюсь, что Jenkins может получить к ним доступ и выполнить их.то есть я даю привилегию на выполнение этих инструментов.
  • Каталог JENKINS_HOME, который я использовал для создания символической ссылки из домашнего каталога по умолчанию на файловую систему с достаточным объемом памяти.Я сделаю то же самое для файла журнала Jenkins.Преимущество наличия этих файлов / каталогов Jenkins / tool как части пользовательской структуры каталогов заключается в том, что мне не нужно запоминать пути установки каждого инструмента.то есть у меня есть все, что у меня есть в Jenkins, Maven, Java, SonarQube, в каталоге, который я знаю.Даже если я настрою эти инструменты на разных серверах, я буду придерживаться одной и той же структуры каталогов.

Мои рекомендации.

  1. Настройка инструментов сборки, которые должны бытьиспользуется / доступен из Jenkins, настройте их с помощью «первого пользователя» и предоставьте привилегию на исполнение пользователю / группе Jenkins.
  2. Создайте каталог 'ci' и создайте ссылку или поместите все инструменты внутри.Кроме того, вы можете иметь подкаталоги для приложения - для двоичных файлов / установленных файлов, данные - для сгенерированных данных, таких как Jenkins_home, log - для хранения файлов журнала этих инструментов.

      ci/jenkins
      ci/sourcetree
      ci/apache-maven
    

Предложение 2первоначально отнимает много времени, но это сэкономит много вашего времени при ежедневном использовании инструментов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...