Корпоративная настройка CI/CD — введение и установки
Добро пожаловать в сериал. Сегодня я познакомлю вас с стеком, который мы собираемся использовать, и настроить учетные записи. Мы будем устанавливать Jenkins и настраивать небольшой бэкэнд -проект, чтобы продемонстрировать конвейер сборки. Чтобы издеваться над большинством корпоративных сред, я буду использовать Ubuntu 18.04 (Linux) в качестве рабочей операционной системы. Вы можете иметь это в качестве двойной загрузки вместе с Windows или использовать виртуальную машину.
Шаг 1: Установите Дженкинс
Официальное руководство содержит подробные инструкции о том, как установить его в разных средах. Если у вас есть другая операционная система, проверьте это руководство по установке
wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add - sudo sh -c 'echo deb https://pkg.jenkins.io/debian-stable binary/ > \ /etc/apt/sources.list.d/jenkins.list' sudo apt-get update sudo apt-get install jenkins
Обратите внимание, что для начала Дженкинса нам нужна Java 8. Если у вас нет Java 8 или у вас другая версия, вы можете увидеть подобную ошибку:
Это можно легко исправить, установив необходимую версию как таковую:
sudo apt install openjdk-8-jdk
а затем установить Дженкинса, как и раньше.
Если все работает нормально, вы не увидите никаких ошибок и сможете открыть экран администратора Дженкинса на http://localhost: 8080/
Анкет Пароль можно найти в файле /var/lib/jenkins/secrets/inityadminpassword
.
Установка плагинов
Это экран, который вы получаете при входе в систему:
Теперь мы должны начать настройку Дженкинса. Мы начнем с рекомендуемого набора плагинов. Есть довольно много плагинов, и этот шаг может занять некоторое время, чтобы закончить.
Как только это будет сделано, он попросит создать пользователя администратора.
Что касается конфиденциальности, я не добавил поле электронной почты на снимке экрана. Наконец, вы попадете на приборную панель Дженкинса
Время приземлиться на приборной панели!
Настройка Bitbucket и Jira
Мы будем использовать Битбакет как инструмент управления исходным кодом. Он использует его в качестве инструмента выпуска версий. Для отслеживания и отслеживания проблем мы будем использовать Джира Анкет Обратите внимание, что оба из них имеют бесплатные версии и имеют достаточно функций для нашего простого использования.
После входа в Bitbucket создайте рабочую область, затем проект внутри этого рабочего пространства, и два репозиторию в рамках проекта. Мои репозитории можно найти в Сервер и UI App
Связывание проекта Jira с Bitbucket Project
Первый шаг — связать рабочую область. После этого мы можем следовать вместе с руководством по экрану, чтобы добавить соответствующие репозитории.
В идеале вы должны увидеть список репозиториев на выбор в самой Джире. Для меня это было не так. Поэтому я вернулся в Bitbucket и выбрал репозиторий и перейти на вкладку Jira.
Нажмите «Управление связанными проектами» в правом верхнем углу.
Создание проблем и представление в Джире
Мы можем пойти в отставание и создать проблемы (истории или ошибки). Если вы сделаете коммит с номером выпуска, мы сможем увидеть то же самое на Jira.
Первая работа
Время настроить нашу первую работу в Дженкинсе. На этом этапе мы просто хотим получить содержимое репозитория в рабочем пространстве. Поскольку этот шаг взаимодействует с git
, крайне важно, чтобы у вас было предварительно установлено на машине.
sudo apt-get install git
Начнем с создания работы по трубопроводу:
В настоящее время мы спрыгнем вниз и нажмите «Попробуйте образец трубопровода» под трубопроводом. Мы удалим все ненужные шаги (на данный момент) и нажмите на ссылку на синтаксис трубопровода.
Вы должны добавить учетные данные, если не существует, чтобы получить доступ к репозиторию. Отсюда вы можете сгенерировать строку для копирования и добавить ее. Последний трубопровод должен что -то вроде этого:
pipeline { agent any stages { stage('Build') { steps { // Get some code from a GitHub repository git credentialsId: 'xxxx-xxx-xxx-xxxx', url: 'https://@bitbucket.org/nilroy/server.git' } } } }
Позвольте нам сохранить это и попытаться построить задание, нажав на Build Now. Вот и наша работа:
Базовый код сервера
В качестве простого примера я создал проект Maven и добавил штраф в классе и тестовый файл.
public class Person { private String firstName; private String lastName; Person(String fn, String ln){ this.firstName = fn; this.lastName = ln; } public String getFullName(){ return this.firstName+" "+this.lastName; } }
import org.junit.Assert; import org.junit.Test; public class PersonTest { @Test public void testFullName(){ Person nilroy = new Person("Niladri", "Roy"); Assert.assertEquals("Niladri Roy", "Niladri Roy"); } }
Вы можете проверить, работает ли все, как и ожидалось, запустив чистую установку и тест с помощью MVN
Анкет Опять же, если у вас нет Maven в вашей локальной системе (или виртуальной машине), вы можете добавить его, используя Sudo Apt Установить Maven
Анкет
Построить и проверить
Время добавить последние кусочки нашего скелетного трубопровода, сцена, которая строит и испытает стадию. Последний трубопровод должен выглядеть так, с оболочкой, управляющей для нас:
pipeline { agent any stages { stage('Checkout') { steps { // Get some code from a GitHub repository git credentialsId: 'xxxx-xxxx-xxxxx', url: 'https://@bitbucket.org/nilroy/server.git' } } stage('Build'){ steps { sh 'mvn -DskipTests clean install' } } stage('Test'){ steps { sh 'mvn test' } } } }
Теперь мы можем сохранить его и запустить работу. Если все пойдет хорошо, мы увидим зеленое поле!
Почему я использовал трубопровод
Существует более простой способ настроить Дженкинса, если бы мы выбрали пустой проект. Но создание трубопровода имеет несколько преимуществ.
- Результаты гораздо более четкие и привлекательные
- Журналы разбиты, и мы можем сосредоточиться только на журналах только тогда, когда что -то терпит неудачу.
- Мы разработчики и предпочитаем печатать, чем щелчок!
- Вы можете легко настроить это как файл проекта и вернуть его.
Это всего лишь верхушка айсберга, и у нас есть что накрыть. Быть в курсе. Чтобы продолжать получать уведомление, когда я отправляю публикацию, следуйте за мной или подпишись на информационный бюллетень!
Первоначально опубликовано в https://ones-zeros.royniladri.dev/corporate-cicd-setup-Introductions и Installations
Оригинал: «https://dev.to/royniladri/corporate-ci-cd-setup-introductions-and-installations-3309»