Что такое DevOps?
DevOps — это культура, которая способствует сотрудничеству между командой разработчиков и ИТ-отделом для более быстрого и автоматизированного развертывания кода в производстве.
Преимущества DevOps
- Релизы / развертывание можно делать чаще и быстрее.
- Короче среднее время ремонта.
- Снижение затрат и надежное развертывание.
- Локализация отказов.
Вам также может понравиться: Построение конвейера непрерывной доставки с использованием Jenkins
Что такое CI / CD?
Непрерывная интеграция — это практика разработки, при которой разработчики проверяют код несколько раз в день в общем хранилище. Каждая интеграция проверяется с помощью автоматической сборки и автоматического модульного тестирования.
Непрерывное развертывание — это возможность быстрее переносить изменения, в том числе функции, исправления ошибок в производство.
Преимущества CI / CD
- Более быстрые выпуски
- Меньшие изменения кода
- Более быстрое среднее время до разрешения (MTTR).
- Улучшена тестируемость.
- Повышение удовлетворенности клиентов.
3.0 Что такое Дженкинс?
Jenkins — это сервер непрерывной интеграции с открытым исходным кодом, способный организовать цепочку действий, которые помогают автоматизировать процесс непрерывной интеграции (и не только).
Дженкинс свободен и полностью написан на Java. Jenkins — это широко используемое приложение по всему миру, которое имеет около 300 тыс. Установок и растет с каждым днем.
Инструменты CI / CD для развертывания приложения MuleSoft
Существует множество инструментов для достижения конвейера CI / CD. В сегодняшней демонстрации мы пройдемся по этому списку инструментов, и они являются широко используемыми инструментами для достижения DevOps для ваших сервисов / приложений Mulesoft.
инструменты | описание |
---|---|
Github |
GitHub — это хостинг Git-репозитория, предоставляющий веб-интерфейс. Он также обеспечивает контроль доступа и несколько функций совместной работы, таких как вики и основные инструменты управления задачами для каждого проекта. |
Гит |
Git является наиболее часто используемой системой контроля версий на сегодняшний день и быстро становится стандартом для контроля версий . Git — это распределенная система контроля версий , то есть ваша локальная копия кода является полным хранилищем контроля версий. |
MUNIT |
MUnit — это среда тестирования приложений Mule, которая позволяет создавать автоматизированные тесты для интеграций Mule и API. MUnit очень хорошо интегрируется с Anypoint Studio. |
нексус |
Nexus является менеджером хранилища. Это позволяет вам прокси, собирать и управлять вашими зависимостями, чтобы вы не постоянно манипулировали коллекцией JAR |
SonarQube |
SonarQube (ранее Sonar) — это платформа с открытым исходным кодом, разработанная SonarSource для непрерывной проверки качества кода для проведения автоматического анализа со статическим анализом кода для обнаружения ошибок, запахов кода и уязвимостей безопасности на более чем 20 языках программирования. |
MUNIT
MUnit — это среда тестирования приложений Mule, которая позволяет создавать автоматизированные тесты для интеграций Mule и API. MUnit очень хорошо интегрируется с Anypoint Studio.
MUnit Matchers
Сопоставители MUnit — это набор функций DataWeave, которые определяют условия утверждения для любого значения в выражении. При определении совпадений включите префикс MunitTools::
в выражение.
Сопоставители группируются в соответствии с типом условий, которые вы хотите проверить.
Тип соответствия
- Основные Matchers
- Струны
- Сопоставимые сопоставители
- Итерируемый и Map Matchers
Для получения более подробной информации о MUnit Matchers, нажмите здесь .
Apache JMeter
Apache JMeter — это программное обеспечение с открытым исходным кодом, популярное для тестирования производительности. Этот инструмент предназначен для нагрузочного тестирования функционального поведения и измерения производительности.
Apache JMeter очень легко интегрировать с Jenkins для выполнения нагрузочного тестирования и генерации отчетов.
Почтальон и Ньюман CLI
Почтальон в настоящее время является одним из самых популярных инструментов, используемых в тестировании API. Коллекция Почтальон позволяет группировать отдельные запросы вместе. Вы можете организовать эти запросы в папки.
Тесты Почтальона — это коды JavaScript, добавленные к запросам, которые помогают вам проверить результаты, такие как успешный или неудачный статус, сравнение ожидаемых результатов и т. Д. Обычно начинается с pm.test. Это можно сравнить с утверждениями и проверкой команд, доступных в других инструментах.
Newman — это сборщик команд для Postman. Это позволяет вам запускать и тестировать Коллекцию Почтальонов непосредственно из командной строки. Он построен с учетом расширяемости, поэтому вы можете легко интегрировать его с вашими серверами непрерывной интеграции и системами сборки.
Он способен генерировать командную строку, а также отчеты HTML.
Некоторые полезные команды Newman:
Установите Newman NPM: — npm install -g newman
Беги Ньюман: — newman run Collection.postman_collection.json
Установите HTML Extra: — npm install -g newman-reporter-htmlextra
Запустить Newman HTML отчет: — newman run postman_collection.json -r htmlextra --reporter-htmlextra-export “path”
Отчет командной строки Newman
Newman HTML отчет
Параметры развертывания MuleSoft
Mulesoft предоставляет различные варианты развертывания вашего приложения.
- Автономный (Локальный)
- кластер
- CloudHub
- Anypoint Runtime Fabric
- Частное Облако
Mule Maven Plugin
Плагин Mule Maven обеспечивает функциональность развертывания и развертывания приложения в локальной среде, облачном хранилище, кластере или среде выполнения Anypoint. Вам нужно добавить Mule Maven Plugin в ваш POM.xml вашего приложения.
XML
1
<plugin>
2
<groupId>org.mule.tools.maven</groupId>
3
<artifactId>mule-maven-plugin</artifactId>
4
<version>3.3.5</version>
5
</plugin>
Развернуть приложение: mvn clean package deploy -DmuleDeploy
Отменить развертывание приложения: mvn mule:undeploy
Развертывание приложения Mule на Cloudhub с помощью плагина Mule Maven
Плагин Mule Maven позволяет развертывать приложение в Anypoint CloudHub. Нам необходимо понять некоторые параметры плагина Mule Maven, необходимые для развертывания приложения в CloudHub.
параметры | описание |
---|---|
URI |
Ваш URI платформы Anypoint. Если не установлено, по умолчанию это значение установлено на https://anypoint.mulesoft.com |
muleVersion |
Версия движка Mule, которая будет работать в вашем экземпляре CloudHub. |
Имя приложения |
Название вашего приложения в CloudHub. |
имя пользователя |
Ваше имя пользователя в Cloudhub. |
пароль |
Ваш пароль Cloudhub. |
сервер |
Сервер Maven с учетными данными Anypoint Platform. |
рабочие |
Количество рабочих. По умолчанию установлено значение 1 |
workerType |
Размер каждого работника. Значением по умолчанию является MICRO. |
Окружающая среда |
Среда CloudHub, в которой вы хотите выполнить развертывание. |
бизнес-группа | Бизнес Группа Развертывания. |
свойства | Если вам нужно установить свойства развертываемого приложения Mule, вы можете использовать элемент верхнего уровня <properties>: Джава
xxxxxxxxxx
1
1 <properties>
2 <key>value</key>
3 </properties>
Например: Джава
x
1 <properties>
2 <http.port>8081</http.port>
3 </properties>
|
область |
Область рабочих облаков. Значением по умолчанию является us-east-1. |
Развертывание приложения Mule в локальной среде с помощью плагина Mule Maven
Для получения более подробной информации о развертывании приложения MuleSoft, нажмите здесь .
YouTube Видео Ссылки
Развертывание приложения Mulesoft на Cloudhub с помощью плагина Mule Maven
Развертывание приложения Mulesoft в CloudHub с использованием Jenkins и Maven
Конфигурирование конвейера Jenkins CI / CD для приложений Mulesoft — Часть I
Настройка конвейера Jenkins CI / CD для приложений Mulesoft — Часть II