Статьи

Рецепт реализации трубопровода Jenkins для приложения MuleSoft [видео]

Что такое 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