Разработчику требуется конвейер, который извлекает облачный шаблон автоматизации из локального экземпляра GitHub при каждом внесении изменений. Конвейер необходим для развертывания приложения WordPress в Amazon Web Services (AWS) EC2 или центре обработки данных. Служба Automation Pipelines вызывает облачный шаблон из конвейера и автоматизирует процесс его непрерывной интеграции и предоставления (continuous integration and continuous delivery, CICD) для развертывания приложения.

Для создания и запуска конвейера потребуется облачный шаблон Automation Assembler.

В качестве источника шаблона в задаче облачного шаблона Automation Pipelines можно выбрать одно из следующих значений.

  • Automation Assembler в качестве средства управления версиями. В этом случае репозиторий GitLab или GitHub не требуется.
  • Система управления версиями, если в качестве средства управления версиями используются GitLab или GitHub. В этом случае требуется веб-перехватчик Git, и конвейер должен запускаться с помощью этого веб-перехватчика.

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

  1. В Automation Assembler отправьте облачный шаблон в репозиторий GitHub.
  2. В Automation Pipelines создайте конечную точку Git. Затем создайте веб-перехватчик Git, использующий конечную точку Git и конвейер.
  3. Чтобы запустить конвейер, обновите любой файл в репозитории GitHub и сохраните изменение.

Если в репозитории GitHub нет облачного шаблона YAML и требуется использовать облачный шаблон из системы управления версиями, используйте следующую процедуру, чтобы узнать, как это сделать. Здесь показано, как создать облачный шаблон для приложения WordPress и запустить его из локального репозитория GitHub. При внесении изменений в облачный шаблон YAML запускается конвейер, который автоматизирует выпуск приложения.

  • В Automation Assembler нужно добавить облачную учетную запись, облачную зону и создать облачный шаблон.
  • В Automation Pipelines нужно добавить конечную точку для локального репозитория GitHub, в котором размещен облачный шаблон. Затем нужно добавить облачный шаблон в конвейер.

В этом примере показано, как использовать облачный шаблон из локального репозитория GitHub.

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

Необходимые условия

  • Добавьте код YAML для приложения WordPress в экземпляр GitHub.
  • Добавьте веб-перехватчик для триггера Git, чтобы конвейер мог извлекать код YAML каждый раз, когда разработчик вносит в него изменения. В Automation Pipelines выберите параметр Триггеры > Git > Веб-перехватчики для Git.
  • Для работы с задачей облачного шаблона пользователю должна быть присвоена любая роль в Automation Assembler.

Процедура

  1. В Automation Assembler выполните следующие действия.
    1. а. Нажмите Шаблоны, затем создайте облачный шаблон и развертывание для приложения WordPress.
    2. б. Вставьте код YAML для WordPress, скопированный в буфер обмена, в облачный шаблон и выполните его развертывание.
      Благодаря применению кода YAML облачный шаблон создает уровень базы данных, веб-уровень и сеть в развертывании.
  2. В Automation Pipelines создайте конечные точки.
    1. а. Создайте конечную точку Git для локального репозитория GitHub, в котором находится файл YAML.
    2. б. Добавьте конечную точку электронной почты, которая может отправлять пользователям уведомления о состоянии работы запущенного конвейера.


      При добавлении конечной точки электронной почты необходимо указать метод шифрования и протокол исходящего соединения.
  3. Создайте конвейер и настройте отправку уведомлений при успешном или неудачном завершении его работы.

    При добавлении уведомления по электронной почте необходимо выбрать одно из состояний конвейера, почтовый сервер и получателей.
  4. Добавьте этап разработки и задачу облачного шаблона.
    1. а. Добавьте задачу облачного шаблона, чтобы выполнить развертывание компьютера, и настройте в ней применение файла YAML облачного шаблона для приложения WordPress.
      resources:
        DBTier:    
          type: Cloud.Machine    
          properties:      
              name: mysql      
              image: 'ubuntu-16'      
              flavor: 'small'      
              constraints:        
                  -   tag: zone:dev
        WebTier:
          type: Cloud.Machine    
          properties:     
              name: wordpress      
              image: 'ubuntu-16'      
              flavor: 'small'      
              constraints:        
                  - tag: zone:dev
       WP-Network-Private:
          type: Cloud.Network
          properties:
              name: WP-Network-Private
              networkType: existing
              constraints:
                  - tag: 'type:isolated-net'
                  - tag: 'zone:dev'
    2. б. Добавьте задачу облачного шаблона, чтобы уничтожить компьютер и освободить ресурсы.
  5. Добавьте производственный этап, включающий задачи утверждения и развертывания.
    1. а. Добавьте задачу «Пользовательская операция», чтобы настроить получение запроса на утверждение отправки приложения WordPress в производственную среду.
    2. б. Добавьте задачу облачного шаблона, чтобы развернуть компьютер и настроить его с помощью файла YAML облачного шаблона для приложения WordPress.
      При выборе команды Создать имя развертывания должно быть уникальным. Если оставить это поле пустым, Automation Pipelines назначает ему случайное уникальное имя.
      Вот некоторые важные сведения об использовании функции Откат в вашей задаче. Если вы выбрали действие Откат, значение в поле Версия отката необходимо указывать в формате n-X. Например, n-1, n-2, n-3 и т. д. При создании и обновлении развертывания в любом расположении, кроме Automation Pipelines, откат будет разрешен.
      Задача облачного шаблона может использовать облачный шаблон VMware в Automation Assembler или извлекать шаблон из системы управления версиями в репозитории GitLab или репозитории GitHub.
  6. Запустите конвейер.

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

  7. В GitHub измените конфигурацию ресурсов экземпляра сервера WordPress с small на medium.
    При внесении изменений запускается конвейер. Он извлекает обновленный код из репозитория GitHub и выполняет сборку приложения.
    WebTier:
        type: Cloud.Machine    
        properties:     
            name: wordpress      
            image: 'ubuntu-16'      
            flavor: 'medium'      
            constraints:        
                - tag: zone:dev
  8. Снова запустите конвейер и убедитесь, что он работает нормально и что конфигурация ресурсов экземпляра WordPress изменилась с малый на средний.

Результаты

Поздравляем! Автоматизация выпуска приложения, развернутого с использованием облачного шаблона YAML, завершена.

Дальнейшие действия

Дополнительные сведения об использовании службы Automation Pipelines см. в разделе Учебники по использованию Automation Pipelines.

Более подробные сведения см. в дополнительных ресурсах в разделе Начало работы с VMware Aria Automation.