Как настроить Azure Непрерывная доставка из репозитория Github с 2 проектами - PullRequest
1 голос
/ 07 марта 2020

Я хочу настроить непрерывную доставку с помощью Azure Dev Ops.

В Github структура каталога репозитория выглядит следующим образом:

  • FunctionAppProject /
  • AspMvcProject /
  • Project.sln

Проект FunctionApp ссылается на объекты из AspMvc проекта и наоборот.

Я хочу создать файл .yaml, который запускает сборку при слиянии с мастером. Затем я хочу создать и развернуть приложение Function в Azure Function App, а проект AspMvc - развернуть, если возможно, в Azure Web App.

Я являюсь начинающий с yaml и Azure Dev Ops, любая помощь будет признательна!

1 Ответ

1 голос
/ 09 марта 2020

Так как вы новичок с yaml и Azure DevOps. Я бы посоветовал вам сначала настроить конвейер CI / CD редактора classi c для вашего решения.

Это поможет вам быстро ознакомиться с процессом Azure DevOps. Тогда вы можете научиться использовать yaml в Azure DevOps. Наконец, попытайтесь преобразовать ваш конвейер classi c в конвейер yaml.

Для нескольких проектов вам просто нужно использовать один конвейер сборки для CI. Один конвейер выпуска для CD с несколькими задачами развертывания или несколькими конвейерами выпуска для CD, соответствующего каждому проекту (рекомендуется).

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

  • В разделе Фильтры ветвей нажмите кнопку Добавить и добавьте ветвь master . Каждый раз, когда происходит фиксация в основную ветку, начинается сборка.
  • Под Path Filters , нам нужно указать пути для поиска изменений файлов, вам нужно будет включить /FunctionAppProject и /AspMvcProject. Если вы поделились кодом с любым из этих проектов, вы должны обязательно включить эти пути проекта.

enter image description here

Фильтры путей позволяют сборку Создателю конвейера удобно решать, следует ли запускать сборку на основе путей измененных файлов в любом заданном коммите. Следовательно, если путь не совпадает с указанным c путем, он также предотвращает запуск сборки.

Некоторые блоги могут вам помочь:

  1. Создать Конвейер CI / CD для. NET с Azure проектом DevOps (как использовать CI / CD в Azure DevOps)
  2. Развертывание нескольких проектов с Azure DevOps (как обрабатывать несколько проектов в Azure DevOps)
  3. Как опубликовать sh артефактов отдельно для каждого проекта в решении из конвейера VSTS CI? (Publi sh your два артефакта, встроенных в проект, по отдельности)

После того, как вы настроили и развернули свои проекты с Azure Успешное выполнение DevOps.

Затем вы можете узнать Справочник по схеме YAML , это подробное справочное руководство по Azure Конвейерам конвейеров YAML. Он включает в себя каталог всех поддерживаемых возможностей YAML и доступных опций.

Наконец, просто конвертируйте ваш конвейер classi c в конвейер yaml. Например, при использовании yaml фильтров Branch и Path должно выглядеть так:

# specific path build
trigger:
  branches:
    include:
    - master
    - releases/*
  paths:
    include:
    - FunctionAppProject/*
    - AspMvcProject/*
    exclude:
    - docs/README.md

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...