Рубрики
Uncategorized

Средство развертывания автоматизации Walle-Watt

Автор оригинала: David Wong.

1 Поток Git

Вообще говоря, модели разработки программного обеспечения включают в себя общие модели водопада, итеративные модели разработки и недавно появившиеся модели гибкой разработки. Каждая модель имеет свои собственные сценарии применения. Git Flow-это модель, построенная на Git для организации деятельности по разработке программного обеспечения. Git Flow фокусируется на решении проблемы путаницы в деятельности по разработке, вызванной различными конфликтами в процессе разработки исходного кода. Поток Git представлен здесь, потому что Walle полагается на свои идеи для непрерывного развертывания.

Поток Git, который может возникнуть во время разработки

Ветви в потоке 1.1 Git

Модель потока Git определяет два вида ветвей: основную ветвь и вспомогательную ветвь. Основная ветвь используется для организации мероприятий, связанных с разработкой и внедрением программного обеспечения, а вспомогательная ветвь используется для организации различных мероприятий по разработке с целью решения конкретных проблем. Название филиала является консенсусным, и, что более важно, оно несет ответственность.

1.2 Основная ветвь

Основная отрасль является основной отраслью всей деятельности в области развития. Результаты всех мероприятий по разработке в конечном итоге будут отражены в коде основной ветви. Основная ветвь разделена на основную ветвь и ветвь разработки.

1.2.1 главная ветвь

Главная ветвь должна хранить код, готовый к развертыванию в производственной среде в любое время. Его обязанность заключается в обновлении кода в главной ветви только при выпуске нового развертываемого кода. Когда процесс разработки завершается и создается новый развертываемый код, код в главной ветви обновляется. В то же время, при каждом обновлении, лучше добавлять соответствующий тег с номером версии (TAG).

1.2.2 Сектор развития

Подразделение разработки-это подразделение, в котором хранятся последние результаты разработки. Его обязанность состоит в том, чтобы дождаться окончательного подтверждения качества, когда функция будет разработана. Обычно код в этой ветке также является кодом, который может быть выпущен каждую ночь. Когда код достаточно стабилен, все результаты разработки могут быть объединены обратно в главную ветвь.

1.3 Вспомогательная Ветвь

Вспомогательная отрасль-это отрасль деятельности по разработке программного обеспечения, используемая для организации и решения конкретных задач. Его жизненный цикл исчезает с завершением его функций. Вспомогательные ветви включают:

  • Ветвь функций, используемая для параллельной разработки новых функций;
  • Ветвь выпуска для публикации вспомогательных версий;
  • Ветвь исправлений для исправления дефектов в производственном коде.

Когда эти ветви завершат свою миссию, они также будут удалены после перехода слияния в основную ветвь.

Модель разработки потока Git ограничивает деятельность по разработке программного обеспечения в здравом смысле с точки зрения управления исходным кодом, изолирует разработку среди членов команды и эффективно позволяет избежать неэффективности и путаницы, вызванных взаимодействием кода в состоянии разработки. Каждая команда развивается в соответствии со своими особенностями и ритмом. Пошив или расширение линии.

2 Введение в Уолл

Что такое 2.1?

Называемый, системный инструмент веб-развертывания, также может быть инструментом непрерывной публикации с простой конфигурацией, совершенными функциями, плавным интерфейсом и готовым использованием! Поддержка git , управление версиями SVN, поддержка различных публикаций веб-кода, статического HTML, динамического PHP, JAVA, которые необходимо скомпилировать, управление правами пользователей, множество пользовательских задач высокого уровня. Одна кнопка онлайн, откат.

Адрес проекта: Уолли-Уолли, онлайн с открытым исходным кодом в течение двух месяцев, поддерживает развертывание и использование более 10 предприятий в режиме онлайн, обновляет версию каждую неделю, продолжает внедрять новые функции.

2.2 Отношения и принципы компонентов Walle

Walle развертывается на главном компьютере для предоставления веб-интерфейса, который облегчает пользователям обновление кода для развертывания в целевом кластере. Walle-это PHP-сервис, работающий на LNMP (LAMP). Хост устанавливает доверительные отношения с целевым кластером, осуществляет синхронизацию кода и настраивает расширенные задачи с помощью команды bash.

Хост, Целевой Кластер, Отношения с Действующими Пользователями

2.3 Конфигурация

Пользовательские проекты могут настраивать адрес хостинга кода git/svn, хост, целевой кластер, расширенные задачи и т.д. После завершения настройки можно быстро воспроизвести текущую конфигурацию, проверить нормальную конфигурацию, а также проверить аудитора и участников проекта.

3 Стена e и Git

Непрерывное развертывание Walle согласуется с идеей Git Flow о развертывании различных ветвей в разных средах. Он разделен на три среды: среду тестирования, среду подготовки к выпуску и производственную среду. Среда тестирования и среда подготовки к выпуску рекомендуют развертывание филиалов, а производственная среда рекомендует развертывание тегов. Конечно, это больше подходит для разработки milestone. Если вы будете быстро перебирать несколько версий каждый день, стоимость пометки будет немного выше.

3.1 Среда Развертывания

3.1.1 Среда Тестирования

  • После завершения разработки ветви функций разработчика и принятия самотестирования merge развертывается в ветви разработки тестовой среды, (QA) развертывается в тестовой среде, ожидая принятия QA.
  • Контроль качества относится к проблемам с ошибками, и разработчики изменяют их в ветке разработки, чтобы объединить, развернуть и принять их снова.

3.1.2 Среда перед выпуском

  • После принятия тестовой среды она объединяется с основной средой предварительного выпуска для развертывания среды предварительного выпуска.
  • Всесторонняя регрессия контроля качества, обнаруженные проблемы с ошибками, слияние, развертывание, принятие изменений разработчиками из основной ветви среза.
  • После возвращения отметьте и приготовьтесь выйти в Интернет

3.1.3 Производственная Среда

  • Метка прошла онлайн-приемку
  • Регрессионные тесты показали, что разработчик проблемы вырезал исправление ветви из мастера, чтобы исправить его.

3.2 Оперативный процесс в среде

Разработчик выбирает проект для выхода в Интернет, выбирает ветвь и версию для выхода в Интернет и отправляет онлайн-список. После того, как менеджер проекта проверит и пройдет, разработчик инициирует онлайн-трансляцию.

4 Процесс развертывания Walle

Развертывание заключается в распространении кода подстановки в целевой кластер после компиляции и настройки главного компьютера для выполнения соответствующих задач целевого кластера. Процесс развертывания разделен на следующие шесть частей, из которых 1-5 находятся на хосте, а 6-в целевом кластере.

  1. Привилегии, проверка каталогов, открытие независимого онлайн-пространства для параллельной публикации, чтобы предотвратить загрязнение кода при одновременном развертывании
  2. Задачи перед развертыванием, некоторые рабочие задачи перед проверкой кода, такие как проверка среды
  3. Обнаружение кода из библиотеки версий git/svn
  4. Задачи после развертывания, рабочие задачи после проверки кода, такие как компиляция MVN java, установка плагина composer для PHP
  5. Коды, сохраненные в отдельных пространствах, синхронизируются с библиотекой версий целевого кластера.
  6. Полное обновление: Когда все машины будут распределены, запустите задачи перед выпуском (служба приостановки java), переключите программную цепочку версий, задачи после выпуска (служба запуска java)

Чтобы обеспечить целостность службы, сначала синхронизируется код, а затем служба переключается. В каждом выпуске развертывания будут сохранены записи версий, и откат может быть выполнен мгновенно, как только произойдет сбой версии в режиме онлайн. Максимальное количество зарезервированных версий в настраиваемой строке будет удалено, если будет удалена версия с истекшим сроком действия, и удаленная версия не может быть откатана одновременно. Для компиляции и настройки многозадачной помощи можно настроить пользовательские задачи для предварительной и последующей работы, а также некоторые предварительные переменные (текущее независимое пространство хоста{РАБОЧЕЕ пространство}, веб-каталог целевой машины, каталог библиотеки версий {ВЕРСИЯ}) предоставляются для облегчения пользовательских задач.

До завершения целевого парка, если какая-либо ссылка выйдет из строя, она будет откатана, ее необходимо будет повторно подключить, и пользователю будут предложены сообщения об ошибках.

5 Список дел

  • Поддержка Докера
  • Открытый интерфейс
  • Поддержка сторонних крючков

6 Узнайте больше

Адрес проекта: Уолли-Уолли, официальная домашняя страница-Уолли-Уолли. Добро пожаловать, чтобы узнать, стар, форк.

7 уолл 2.0

8 функция walle 2.0

Мощный и бесплатный открытый исходный код Сила плитки Walle-web Наконец обновлено 2.0 Сейчас же! Отнимите почти все мое свободное время, энергию и деньги, чтобы заплатить за использование вашего дохода, я надеюсь, вам понравится это делать. звезда Чтобы показать поддержку, проект лучше и обратную связь с вами. в настоящее время 2.0 Предварительная версия еще не полностью доступна для предприятия. Пожалуйста, следите за этим. Я обновлю его по общедоступному номеру (внизу).

  • класс gitlab Из RESTful API Класс gitlab Модель привилегий для будущего доступа gitlab Сюрприз совести
  • Управление пространством. Это означает наличие независимых ресурсов пространства: управление средой, группы пользователей, проекты, серверы и т.д.
  • Публикация в оттенках серого. Голос продолжал звучать и наконец раздался.
  • websocket Отображение в реальном времени при развертывании консоль оболочки
  • Идеальный механизм уведомления. Почта, гвозди
  • Я был потрясен новым интерфейсом, который был шелковистым и гладким.