Рубрики
Uncategorized

Корпоративная настройка CI/CD — введение и установки

Корпоративная настройка CI/CD — Введение и инсталляции Добро пожаловать в серию. Сегодня я буду… Tagged с CICD, Jenkins, Automation, DevOps.

Корпоративная настройка 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'
                }
            }
        }
    }

Теперь мы можем сохранить его и запустить работу. Если все пойдет хорошо, мы увидим зеленое поле!

Почему я использовал трубопровод

Существует более простой способ настроить Дженкинса, если бы мы выбрали пустой проект. Но создание трубопровода имеет несколько преимуществ.

  1. Результаты гораздо более четкие и привлекательные
  2. Журналы разбиты, и мы можем сосредоточиться только на журналах только тогда, когда что -то терпит неудачу.
  3. Мы разработчики и предпочитаем печатать, чем щелчок!
  4. Вы можете легко настроить это как файл проекта и вернуть его.

Это всего лишь верхушка айсберга, и у нас есть что накрыть. Быть в курсе. Чтобы продолжать получать уведомление, когда я отправляю публикацию, следуйте за мной или подпишись на информационный бюллетень!

Первоначально опубликовано в https://ones-zeros.royniladri.dev/corporate-cicd-setup-Introductions и Installations

Оригинал: «https://dev.to/royniladri/corporate-ci-cd-setup-introductions-and-installations-3309»