Статьи

Дженкинс: изменение домашнего каталога Дженкинса

Дом там, где конфигурации.

Что такое домашний каталог Дженкинс?

Домашний каталог Jenkins содержит все сведения о конфигурации вашего сервера Jenkins , сведения, которые вы настраиваете на экране Manage Jenkins. Эти сведения о конфигурации хранятся в виде набора файлов XML. Большая часть конфигурации ядра хранится в файле config.xml.


Вам также может понравиться:
Jenkins: интеграция Jenkins с командами Microsoft

Домашний каталог Jenkins содержит подкаталог для каждого задания сборки Jenkins, управляемого данным экземпляром Jenkins. Каждый каталог заданий, в свою очередь, содержит два подкаталога, сборки и рабочее пространство , а также некоторые другие файлы. Он содержит файл config.xml задания на сборку, в котором, как и следовало ожидать, содержатся сведения о конфигурации для этого задания на сборку.

Есть также некоторые другие файлы, используемые внутри Jenkins, которые вы обычно не трогали, такие как nextbuildnumberфайл (который содержит номер, который будет присвоен следующей сборке в этом задании сборки), а также символические ссылки на самые последние успешная сборка и последняя стабильная. Успешная сборка — это та, в которой нет ошибок компиляции. Стабильная сборка — это успешная сборка, которая прошла все критерии качества, которые вы, возможно, настроили, такие как модульные тесты, покрытие кода.

Важны как каталоги build, так и каталоги рабочей области. Каталог рабочей области — это место, где Jenkins создает ваш проект: он содержит исходный код, извлеченный Jenkins, а также любые файлы, созданные самой сборкой. Это рабочее пространство используется повторно для каждой последующей сборки. В каждом проекте существует только один каталог рабочей области, и требуемое дисковое пространство имеет тенденцию быть относительно стабильным.

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

Шаги по изменению домашнего каталога Jenkins

1. Нажмите « Управление Jenkins» в левом углу панели инструментов Jenkins.

Управление Дженкинс

Управление Дженкинс

2. Выберите вкладку « Информация о системе ».

системная информация

Системная информация

3. Прокрутите вниз до раздела Переменные среды, и вы увидите  JENKINS_HOME

Переменные среды

Переменные среды

4. Измените домашний логин Jenkins на экземпляр сервера Jenkins, используя Putty.

Используя Putty

Используя Putty

5. Перейдите к пользователю root с помощью следующей команды.

sudo -i

6. Прежде чем что-либо менять в мастере Jenkins, мы должны остановить сервер Jenkins.

sudo service jenkins stop

7. Создайте новый каталог, куда вы хотите переместить дом Дженкинса. В этой статье я создаю новый каталог по /homeпути.

mkdir /home/new_home

8. Нам нужно изменить владельца созданного каталога с помощью chownкоманды, чтобы изменить владельца пользователя и группы созданного каталога.

sudo chown jenkins:jenkins /home/new_home/

9. Скопируйте содержимое из старого домашнего каталога Jenkins /var/lib/jenkinsв новый домашний каталог Jenkins, /home/new_home/используя следующую команду.

sudo cp -prv /var/lib/jenkins /home/new_home/

10. Затем измените домашнюю страницу пользователя Jenkins с помощью следующей команды.

sudo usermod -d /home/new_home/ jenkins

11. Обновите новый путь к домашнему каталогу Jenkins в /etc/default/jenkins.

sudo vi /etc/default/jenkins

12. Прокрутите вниз до домашнего местоположения Jenkins и обновите новый путь к домашнему каталогу.

# defaults for Jenkins automation server

# pulled in from the init script; makes things easier.
NAME=jenkins

# arguments to pass to java

# Allow graphs etc. to work even when an X server is present
JAVA_ARGS="-Djava.awt.headless=true"

#JAVA_ARGS="-Xmx256m"

# make jenkins listen on IPv4 address
#JAVA_ARGS="-Djava.net.preferIPv4Stack=true"

PIDFILE=/var/run/$NAME/$NAME.pid

# user and group to be invoked as (default to jenkins)
JENKINS_USER=$NAME
JENKINS_GROUP=$NAME

# location of the jenkins war file
JENKINS_WAR=/usr/share/$NAME/$NAME.war

# jenkins home location
JENKINS_HOME=/home/new_home

13. Запустите службу Jenkins с помощью следующей команды.

sudo service jenkins start 

14. Затем нам нужно обновить пароль администратора, который можно найти в новом домашнем каталоге Jenkins.

 cat /home/new_home/secrets/initialAdminPassword

15. Скопируйте и вставьте Пароль администратора в поле Пароль администратора. Нажмите кнопку продолжить.

Разблокировать дженкинс

Разблокировать дженкинс

16. Далее вам будет предложено настроить первого администратора. Заполните всю необходимую информацию и нажмите кнопку Сохранить и продолжить .

17. Установите URL для вашего экземпляра Jenkins. URL будет создан автоматически. Подтвердите URL, нажав кнопку « Сохранить и завершить» .

18. После того, как все настройки завершены, вы увидите экран «Jenkins is ready». Нажмите Пуск с использованием Jenkins, и вы будете перенаправлены на панель управления Jenkins.

19. Нажмите « Управление Jenkins» в левом углу панели управления Jenkins, затем выберите « Информация о системе» .

20. Прокрутите вниз до раздела Переменные среды , вы увидите новый JENKINS_HOME.

Новый JENKINS_HOME

Создать фристайл проект

После изменения домашнего каталога Jenkins мы можем протестировать ранее созданные или новые рабочие места . Ради этой статьи я создал новый фристайл-проект.

1. Выберите Новый элемент в верхнем левом углу на приборной панели.

Новый предмет

2. Введите имя вашего проекта в поле « Введите имя элемента» , выберите « Freestyle Project» и нажмите кнопку « ОК» .

3. Введите описание (необязательно).

4. Перейдите в раздел « Сборка » и нажмите « Добавить сборку» .

5. Выберите Execute Shell в качестве шага сборки.

6. Скопируйте и вставьте следующую команду в командное поле.

echo $HOME

Выполнить оболочку

7. Нажмите Сохранить , он будет перенаправлен на страницу просмотра задания.

8. На левой панели нажмите кнопку Build Now , чтобы выполнить задание.

9. Мы можем проверить историю выполненной сборки в журнале сборки , щелкнув номер сборки, который в данном случае является номером 1.

10. Нажмите на номер сборки и выберите Console Output . Здесь вы можете увидеть домашний каталог пользователя Jenkins и домашний каталог Jenkins.

Выход на консоль Jenkins

Дальнейшее чтение

Декларативный конвейер с Дженкинсом (RefCard)

Начало работы с Jenkins: полное руководство