Поделиться через


Создание первого конвейера

Сервисы Azure DevOps | Azure DevOps Server | Azure DevOps Server 2022

Это пошаговое руководство по использованию Azure Pipelines для создания примера приложения из репозитория Git. В этом руководстве используются конвейеры YAML, настроенные с помощью редактора конвейера YAML.

Дополнительные сведения о различных разделах YAML-конвейера см. в описании pipeline в схеме Azure Pipelines YAML и в разделе Настройте ваш YAML-конвейер.

Если вместо этого вы хотите использовать классические конвейеры, см. раздел "Определение классического конвейера". Инструкции по использованию TFVC см. в статье о сборке репозиториев TFVC.

Предварительные требования — Azure DevOps

Убедитесь, что у вас есть указанные ниже компоненты.

  • Учетная запись GitHub, в которой можно создать репозиторий. Создайте аккаунт бесплатно.

  • Организация Azure DevOps. Создайте аккаунт бесплатно. Если у вашей команды уже есть один, убедитесь, что вы являетесь администратором проекта Azure DevOps, который вы хотите использовать.

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

Совет

Вы можете использовать ИИ, чтобы помочь с этой задачей позже в этой статье или ознакомиться с включение помощи ИИ в Azure DevOps MCP Server, чтобы начать работу.

Создание первого конвейера

Получение примера кода Java

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

https://github.com/MicrosoftDocs/pipelines-java

Создание первого конвейера Java

  1. В проекте Azure DevOps выберите Pipelines в меню навигации слева.

  2. Выберите новый конвейер или создать конвейер , если этот конвейер является первым в проекте.

  3. На экране Где находится ваш код, выберите GitHub.

  4. Вы можете перенаправиться на GitHub для входа. В этом случае введите свои GitHub учетные данные.

  5. На экране Выберите репозиторий выберите репозиторий, в котором находится ваше приложение .NET.

  6. Возможно, вы будете перенаправлены на GitHub для установки приложения Azure Pipelines. В этом случае выберите " Утвердить" и "Установить".

  1. Azure Pipelines будет анализировать репозиторий и рекомендовать шаблон конвейера Maven.

  2. Когда появится новый поток, просмотрите YAML, чтобы понять, что он делает. Когда будете готовы, выберите Сохранить и запустить.

  3. Вам будет предложено коммитить новый azure-pipelines.yml файл в ваш репозиторий. После того как вы будете довольны сообщением, нажмите кнопку "Сохранить и снова запустить ".

    Если вы хотите посмотреть конвейер в действии, выберите задание сборки.

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

    Теперь у вас есть рабочий конвейер YAML (azure-pipelines.yml) в репозитории, который готов к настройке!

  4. Когда вы будете готовы внести изменения в конвейер, выберите его на странице конвейеров и изменитеazure-pipelines.yml файл.

Узнайте больше о работе с Java в вашем потоке.

Просмотр конвейеров и управление ими

Вы можете просматривать конвейеры и управлять ими, выбрав конвейеры из меню слева, чтобы перейти на целевую страницу конвейеров.

Снимок экрана: целевая страница пайплайнов.

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

Выберите "Последние ", чтобы просмотреть недавно запущенные конвейеры (представление по умолчанию) или выберите "Все ", чтобы просмотреть все конвейеры.

Снимок экрана с параметрами просмотра запусков конвейеров на главной странице конвейеров.

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

Снимок экрана: недавно запущенные конвейеры.

Выберите "Запуски" , чтобы просмотреть все запуски конвейера. При необходимости можно отфильтровать отображаемые запуски.

Снимок экрана запусков конвейера.

Выберите запуск конвейера, чтобы просмотреть сведения об этом запуске.

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

Снимок экрана: контекстное меню запуска конвейера.

Просмотр сведений о конвейере

Страница сведений для конвейера позволяет просматривать и управлять этим конвейером.

Снимок экрана: страница сведений о конвейере.

Выберите "Изменить", чтобы изменить конвейер. Дополнительные сведения см. в редакторе конвейера YAML. Вы также можете изменить конвейер, изменив файл azure-pipelines.yml непосредственно в репозитории, на котором размещен конвейер.

Просмотр деталей выполнения конвейера

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

Сводка выполнения конвейера: снимок экрана.

В области сводки можно просмотреть подробности задания и этапа, скачать артефакты и открыть связанные коммиты, результаты тестирования и рабочие элементы.

Задания и этапы

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

Снимок экрана заданий и этапов конвейера.

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

Снимок экрана: задачи конвейера.

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

Снимок экрана: меню содержимого задач конвейера.

Отмена и повторный запуск конвейера

Если конвейер запущен, его можно отменить, нажав кнопку "Отмена". Если выполнение завершено, можно повторно запустить конвейер, нажав кнопку "Запустить новое".

Снимок экрана отмены запуска конвейера.

Меню дополнительных действий запуска конвейера

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

Снимок экрана: страница

Примечание.

Невозможно удалить запуск, если он сохранён. Если вы не видите "Удалить", нажмите кнопку "Остановить сохранение выполнения", а затем удалите его. Если есть и команда Удалить, и команда Просмотреть хранящиеся выпуски, к вашему выполнению по-прежнему применяются одна или несколько настроенных политик хранения. Выберите Просмотр выпусков с сохранением, удалите политики (удаляются только политики для выбранного сеанса), а затем удалите сеанс.

Добавление индикатора состояния в репозиторий

Многие разработчики предпочитают демонстрировать высокое качество своего кода, отображая значки состояния в репозитории.

Значок статуса показывает, что поток Azure успешно выполнен.

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

  1. В Azure Pipelines перейдите на страницу Pipelines, чтобы просмотреть список конвейеров. Выберите конвейер, созданный в предыдущем разделе.

  2. Выберите и выберите значок состояния.

  3. Выберите значок статуса.

  4. Скопируйте пример Markdown из раздела Sample Markdown.

Теперь с меткой Markdown в буфере обмена выполните следующие действия в GitHub:

  1. Перейдите в список файлов и выберите Readme.md. Выберите значок карандаша для изменения.

  2. Вставьте значок состояния Markdown в начале файла.

  3. Зафиксируйте изменение в ветке main.

  4. Обратите внимание, что индикатор состояния отображается в описании репозитория.

Чтобы настроить анонимный доступ к значкам для частных проектов:

  1. Перейдите в раздел "Параметры проекта" в левом нижнем углу страницы

  2. Откройте вкладку "Параметры" в разделе "Конвейеры"

  3. Переключите ползунок Отключить анонимный доступ к значкам в разделе Общие

Примечание.

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

Так как вы только что изменили файл Readme.md в этом репозитории, Azure Pipelines автоматически создает код в соответствии с конфигурацией в файле azure-pipelines.yml в корне репозитория. Вернувшись в Azure Pipelines, обратите внимание, что появился новый запуск. Каждый раз, когда вы вносите изменения, в Azure Pipelines начинается новый процесс.

Мы покажем, как использовать классический редактор в Azure DevOps Server 2019 для создания сборки и релиза, которые печатают "Hello world".

  1. Перейдите к Azure Repos. (Центр кода в предыдущей версии навигации)

    Файлы репозиториев

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

    Инициализация репозитория

  1. Перейдите к Azure Repos.

  2. Добавьте файл.

    На вкладке

  3. В диалоговом окне назовите новый файл и создайте его.

    HelloWorld.ps1
    
  4. Скопируйте и вставьте этот скрипт.

    Write-Host "Hello world"
    
  5. Зафиксируйте (сохраните) файл.

  1. Выберите Azure Pipelines, он должен автоматически отправить вас на страницу Builds.

    Перейдите на вкладку

  2. Создание нового конвейера.

    Выберите кнопку вкладки сборки

    Для новых пользователей Azure DevOps это автоматически приведет к созданию конвейера YAML. Чтобы перейти к классическому редактору и завершить этот процесс, необходимо отключить функцию предварительного просмотра для нового интерфейса создания конвейеров YAML:

    Щелкните параметры в правом верхнем углу экрана и щелкните функции предварительного просмотра

    Щелкните переключатель, чтобы отключить функцию предварительного просмотра yaml

  3. Убедитесь, что источник, проект, репозиторий и ветка по умолчанию совпадают с местом, в котором вы создали скрипт.

  4. Начните с пустого задания.

  5. В левой части выберите Конвейер и укажите любое имя, которое хотите использовать. Для пула агентов выберите Hosted VS2017.

  6. В левой части выберите знак плюса (+), чтобы добавить задачу в задание 1. В правой части выберите категорию служебной программы, выберите задачу PowerShell из списка и нажмите кнопку "Добавить".

    Добавление задачи сборки в задание

  7. В левой части выберите новую задачу скрипта PowerShell .

  8. Для аргумента «Путь к скрипту» нажмите кнопку , чтобы перейти к вашему репозиторию и выбрать созданный вами скрипт.

    Выбор скрипта

  9. Выберите Сохранить и поместить в очередь, а затем щелкните Сохранить.

  1. На вкладке "Задачи" выберите знак плюса (+), чтобы добавить задачу в задание 1.

  2. Выберите категорию Utility, выберите задачу Publish Build Artifacts и нажмите Добавить.

    Добавление задачи публикации артефактов

    Путь к публикации: нажмите кнопку, чтобы просмотреть и выбрать созданный скрипт.

    Имя артефакта: Введите drop.

    Место публикации артефакта: Выберите Azure Artifacts/TFS.

  1. Выберите "Сохранить и очередь", а затем выберите "Сохранить и очередь".

  2. В диалоговом окне нажмите «Сохранить и добавить в очередь» еще раз.

    Ставит в очередь новую сборку на агенте, размещенном корпорацией Майкрософт.

  3. Вы увидите ссылку на новую сборку в верхней части страницы.

    Консоль сборки

    Выберите ссылку, чтобы посмотреть новую сборку, как это происходит. После выделения агента вы начнете видеть журналы сборки в реальном времени. Обратите внимание, что скрипт PowerShell выполняется в рамках сборки и что "Hello world" выводится в консоль.

    Просмотр в консоли сборки

  4. Перейдите к сводке сборки. На вкладке "Артефакты" сборки обратите внимание, что скрипт публикуется как артефакт.

    Откройте консоль сборки, чтобы увидеть артефакт

Открытие задачи PowerShell в консоли сборки

Теперь вы увидите результаты изменений. Перейдите к Azure Pipelines и выберите Queued. Обратите внимание, что в разделе "Очередь" или " Запущенная " сборка автоматически активируется с помощью зафиксированного изменения.

Создание сводного журнала скриптов PowerShell

  1. Перейдите на вкладку "Конвейеры" и выберите "Выпуски".

  2. Выберите действие для создания нового конвейера. Если конвейер выпуска уже создан, выберите знак плюса (+) и нажмите кнопку "Создать конвейер выпуска".

  3. Выберите действие, чтобы начать с пустого задания.

  4. Назовите этап QA.

  5. На панели артефактов нажмите кнопку +Добавить и укажите источник (конвейер сборки). Нажмите кнопку "Добавить".

  6. Выберите молнию, чтобы активировать непрерывное развертывание, а затем включите триггер непрерывного развертывания справа.

    Выбор молнии для активации непрерывного развертывания

  7. Перейдите на вкладку "Задачи " и выберите этап качества обслуживания.

  8. Выберите знак плюса (+) для задания, чтобы добавить задачу в задание.

  9. В диалоговом окне "Добавление задач" выберите "Служебная программа", найдите задачу PowerShell и нажмите кнопку "Добавить".

  10. В левой части выберите новую задачу скрипта PowerShell .

  11. Для аргумента Путь к скрипту нажмите кнопку , чтобы просмотреть артефакты и выбрать созданный скрипт.

  12. Добавьте следующие аргументы:

    -greeter "$(Release.RequestedFor)" -trigger "$(Build.DefinitionName)"
    
  13. На вкладке Конвейер выберите этап QA и выберите Клонировать.

    Клонируйте среду релиза в QA

  14. Переименуйте клонированный этап Production.

  15. Переименуйте конвейер выпуска Hello world.

    Переименование конвейера выпуска hello world

  16. Сохраните конвейер выпуска.

  1. Создайте новый выпуск.

    Выпустить релиз — DevOps 2019 и 2020

    Когда появится Создание нового выпуска, выберите Создать.

  2. Откройте выпуск, который вы создали.

    Выпуск создан — DevOps 2019 и 2020

  3. Просмотрите логи, чтобы получить данные о выпуске в режиме реального времени.

    Журналы релизов — DevOps 2019 и 2020

Итоговый лог шага скрипта релиза — DevOps 2019 и 2020

Создание первого конвейера с помощью ИИ

Если вы настроите Azure DevOps MCP Server, то можете получить помощь с созданием, пониманием и устранением неполадок вашего первого конвейера, используя естественный язык.

Начало работы

задачи Пример запроса
Создание начального конвейера Create a basic pipeline YAML for this repo in project <Contoso>
Минимальный конвейер сборки What's the smallest pipeline that will build this project in <Contoso>?
Описание YAML конвейера Explain each section of this pipeline YAML in <Contoso>
Выбор пула агентов Which agent pool should I use for this project in <Contoso>?
Справка по каркасу Help me create my first pipeline for this repo in <Contoso>

Проверка разрешений и доступа

задачи Пример запроса
Проверка доступа к репозиторию Can this pipeline access the repo in project <Contoso>?
Проверка разрешений службы сборки Does the build service have permission to run pipelines in project <Contoso>?
Доступ к публикации артефактов Will this pipeline be able to publish artifacts in <Contoso>?
Требования к агенту Does this repo require a Microsoft-hosted or self-hosted agent in <Contoso>?
Выбор ОС What OS should the pipeline run on for this project in <Contoso>?

Устранение неполадок при первом запуске

задачи Пример запроса
Отладка сбоя первого запуска Why did my first pipeline fail in project <Contoso>?
Объяснение ошибки Explain this pipeline error in plain English for project <Contoso>
Определение шага сбоя What step failed and why in the latest run for <Contoso>?
Справка по помощи при ошибке разрешений Why would a new pipeline fail with a permission error in <Contoso>?
Целевое исправление How do I fix this error without changing the entire pipeline in <Contoso>?

Оптимизация и расширение

задачи Пример запроса
Готовность к эксплуатации What's missing from this pipeline for a production repo in <Contoso>?
Проверка pr Should I add PR validation to this pipeline in <Contoso>?
Проверки безопасности What security scans are recommended for first pipelines in <Contoso>?
Распространенные дальнейшие действия What steps are commonly added after the initial pipeline in <Contoso>?
Рекомендации по триггерам What triggers should I use for my first pipeline in <Contoso>?
Возможности агента Do we already have custom agent capabilities this pipeline needs in <Contoso>?
Предложения по улучшению Suggest improvements to this pipeline in <Contoso>

Совет

Если вы используете Visual Studio Code, режим агента особенно полезен для формирования шаблонов новых конвейеров и устранения неполадок при первом запуске.

Следующие шаги

Вы узнали, как создать первый конвейер в Azure. Теперь узнайте больше о настройке конвейеров на выбранном языке:

Кроме того, можно продолжить настройку созданного конвейера .

Чтобы запустить конвейер в контейнере, см. раздел Задания для контейнеров.

Дополнительные сведения о создании репозиториев GitHub см. в разделе Создание репозиториев GitHub.

Для получения информации о том, как публиковать артефакты конвейера, см. «Публикация артефактов конвейера».

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

Очистка

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

Чтобы удалить конвейер, перейдите на страницу сводки для этого конвейера и выберите пункт "Удалить " в меню ... в правом верхнем углу страницы. Введите имя конвейера, чтобы подтвердить, и нажмите кнопку "Удалить".

Удаление конвейера

Вопросы и ответы

Где можно прочитать статьи о DevOps и CI/CD?

Что такое непрерывная интеграция

Что такое непрерывная поставка

Что такое DevOps?

Какую систему управления версиями можно использовать?

Когда вы будете готовы к работе с CI/CD для вашего приложения, вы можете использовать систему управления версиями по своему усмотрению:

Как реплицировать конвейер?

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

меню действий сборки всех определений - реплицировать действия

После клонирования конвейера можно внести изменения, а затем сохранить его.

После экспорта конвейера его можно импортировать на вкладке "Все конвейеры ".

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

Совет

Если вы используете редактор новой сборки, в нижней части списка отображаются пользовательские шаблоны.

Как работать с черновиками?

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

сохранить как черновик

редактирование черновика — DevOps 2019 и 2020

публикация черновика — DevOps 2019 и 2020

Как удалить конвейер?

Чтобы удалить конвейер, перейдите на страницу сводки для этого конвейера и выберите пункт "Удалить " в меню ... в правом верхнем углу страницы. Введите имя конвейера, чтобы подтвердить, и нажмите кнопку "Удалить".

Что еще можно сделать при очереди сборки?

Вы можете автоматически или вручную поставить сборки в очередь.

При ручной постановке сборки в очередь можно выполнить её однократное выполнение:

Где можно узнать больше о параметрах конвейера?

Дополнительные сведения о параметрах конвейера см. в следующем разделе:

Как программно создать конвейер сборки?

Справочник по REST API. Создание конвейера сборки

Примечание.

Вы также можете управлять сборками и конвейерами сборки из командной строки или скриптов с помощью интерфейса командной строки Azure Pipelines CLI.