В этой статье блога мы рассмотрим различные способы запуска шага вручную в Azure Pipeline. Как разработчик, вы можете столкнуться с ситуациями, когда вам необходимо выполнить определенный шаг в вашем конвейере за пределами обычного автоматизированного процесса. Мы рассмотрим различные подходы, используя разговорный язык и предоставив примеры кода, чтобы дать вам знания для эффективного решения таких сценариев.
Метод 1. Пользовательский интерфейс Azure Pipelines
Пользовательский интерфейс Azure Pipelines предоставляет удобный интерфейс для запуска шагов конвейера вручную. Вот как это можно сделать:
- Перейдите на портал Azure DevOps и найдите свой конвейер.
- Откройте конвейер и выберите нужный этап или задание.
- Найдите кнопку «Выполнить» или «Поставить в очередь» и нажмите ее, чтобы запустить этот шаг вручную.
Метод 2. Использование REST API
Azure Pipelines предоставляет комплексный REST API, который обеспечивает программное взаимодействие с конвейерами. Вы можете использовать этот API для запуска определенного шага. Вот пример использования cURL:
curl -X POST \
-u "$(username):$(personal_access_token)" \
-H "Content-Type: application/json" \
-d '{ "resources": {"repositories": {"self": true}}, "templateParameters": {}, "variables": {} }' \
'https://dev.azure.com/{organization}/{project}/_apis/pipelines/{pipelineId}/runs?api-version=6.0-preview.1'
Не забудьте заменить $(username), $(personal_access_token), {organization}, {project} и {pipelineId} вашими конкретными значениями.
Метод 3: Azure CLI
Azure CLI предоставляет интерфейс командной строки для взаимодействия со службами Azure. Вы можете использовать Azure CLI для запуска этапа конвейера. Вот пример:
az pipelines run --name {pipeline_name} --org {organization} --project {project}
Замените {pipeline_name}, {organization} и {project} своими конкретными значениями.
Метод 4: PowerShell
Если вы предпочитаете PowerShell, вы можете использовать модуль Azure PowerShell. Вот пример:
Invoke-AzPipelineRun -Name {pipeline_name} -OrganizationUrl {organization_url} -ProjectName {project_name}
Замените {pipeline_name}, {organization_url} и {project_name} своими конкретными значениями.
Метод 5. Клиентские библиотеки REST API Azure DevOps
Azure DevOps предоставляет клиентские библиотеки для популярных языков программирования, таких как Python,.NET и Node.js. Вы можете использовать эти библиотеки для программного запуска этапа конвейера. Вот пример использования Python:
from azure.devops.connection import Connection
from msrest.authentication import BasicAuthentication
# Establish a connection
credentials = BasicAuthentication('', personal_access_token)
connection = Connection(base_url=organization_url, creds=credentials)
# Get the client
client = connection.clients.get_build_client()
# Trigger a build
client.queue_build(project=project_name, definition_id=pipeline_id)
Не забудьте предоставить свой личный токен доступа, URL-адрес организации, название проекта и идентификатор конвейера.
В этой статье мы рассмотрели пять различных способов запуска шага в Azure Pipeline вручную. Предпочитаете ли вы использовать пользовательский интерфейс Azure Pipelines, REST API, Azure CLI, PowerShell или клиентские библиотеки Azure DevOps, в вашем распоряжении есть несколько вариантов. Выберите метод, который соответствует вашему рабочему процессу и предпочтениям. Возможность вручную запускать этапы конвейера обеспечивает большую гибкость и контроль над процессами CI/CD.