Новости

«Флант» представляет dapp — свою Open Source-утилиту для DevOps и CI/CD

18 июля 2017 г.

Выстраивая процессы CI/CD (Continuous Integration и Continuous Delivery) в работе над различными проектами (подробнее о том, как мы это делаем, читайте здесь), мы пришли к необходимости инструмента, упрощающего, улучшающего и автоматизирующего выполнение ряда рутинных операций в стеке используемых нами технологий и продуктов: Git, Chef, Docker и Kubernetes. Так появился проект dapp, возможностями которого мы хотим поделиться со всем профессиональным сообществом.

Итак, dapp — это утилита для реализации и сопровождения процессов CI/CD, призванная упростить DevOps-инженерам разработку кода для сборки, уменьшить время ожидания сборки по очередному коммиту и автоматизировать деплой. На данный момент dapp обладает:

  • развитой системой сборки образов Docker-контейнеров, которая благодаря специально предусмотренным возможностям: реализации паттерна из 4 стадий, кэшам, внешнему контексту, артефактам, продуманной работе с Git (подробнее о них читайте здесь) — выполняется по-настоящему быстро и эффективно;
  • начальной поддержкой деплоя, которая обеспечивает развёртывание инфраструктуры в Kubernetes по переданным YAML-конфигурациям (с помощью Helm) и запуск контейнеров уже в этой инфраструктуре;
  • поддержкой системы управления конфигурациями Chef для реализации подхода IaC («инфраструктура как код»), благодаря которой создаваемые Docker-образы могут настраиваться по рецептам Chef (cookbooks).

Из планов на обозримое будущее — поддержка системы Ansible, развитие возможностей деплоя до полного цикла CI/CD.

Более подробную информацию о dapp можно получить из следующих источников:

  • «Собираем Docker-образы для CI/CD быстро и удобно вместе с dapp (обзор и видео)»: статья в блоге и видео с выступления технического директора АО «Флант» Дмитрия Столярова;
  • официальная техническая документация на русском языке —  flant.github.io/dapp;
  • официальная группа поддержки в Telegram — dapp_ru.

Мы используем dapp для решения задач в production с прошлого года и считаем, что эта технология созрела для более массового использования. Исходный код проекта написан на языке Ruby и опубликован в GitHub под свободной лицензией (Apache License v2). Приглашаем DevOps-специалистов и Open Source-энтузиастов, заинтересованных в применении dapp, к участию в проекте: мы будем рады вашим вопросам, историям успеха, issues и pull requests.

Основные разработчики dapp в компании «Флант» — Алексей Игрычев, Тимофей Кириллов, Иван Михейкин, Дмитрий Столяров.