Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019
В этом кратком руководстве вы создадите конвейер, который создает и тестирует приложение Python. Вы узнаете, как использовать Azure Pipelines для создания, тестирования и развертывания приложений и сценариев Python в рамках системы непрерывной интеграции и непрерывной доставки (CI/CD).
Предварительные условия
Продукт | Требования |
---|---|
Azure DevOps | - Проект Azure DevOps. — способность запуска потоков на хостинговых агентах Microsoft. Вы можете приобрести параллельное задание или запросить уровень "Бесплатный". — Базовые знания о YAML и Azure Pipelines. Дополнительные сведения см. в разделе Создайте ваш первый конвейер. Разрешения - : — Чтобы создать конвейер: необходимо быть в группе Участников, и у группы должно быть разрешение создать конвейер сборки установлено на "Разрешить". Члены группы "Администраторы проектов" могут управлять конвейерами. — Для создания подключений к службам необходимо иметь роль администратора или создателя для подключений служб. |
GitHub | — учетная запись GitHub. - Подключение службы GitHub для авторизации Azure Pipelines. |
Лазурный | Подписка Azure |
Продукт | Требования |
---|---|
Azure DevOps | - Проект Azure DevOps. — Самостоятельно размещённый агент. Сведения о создании см. в разделе "Локальные агенты". — Базовые знания о YAML и Azure Pipelines. Дополнительные сведения см. в разделе Создайте ваш первый конвейер. Разрешения - : — Чтобы создать конвейер: необходимо быть в группе Участников, и у группы должно быть разрешение создать конвейер сборки установлено на "Разрешить". Члены группы "Администраторы проектов" могут управлять конвейерами. — Для создания подключений к службам необходимо иметь роль администратора или создателя для подключений служб. |
GitHub | — учетная запись GitHub. - Подключение службы GitHub для авторизации Azure Pipelines. |
Лазурный | Подписка Azure |
Python предварительно установлен на агентах, хостингующихся на Microsoft для Linux, macOS и Windows. Вам не нужно ничего больше настраивать для создания проектов Python. Чтобы узнать, какие версии Python предварительно установлены, см. статью "Использование размещенного корпорацией Майкрософт агента".
Создать форк примера кода
Форкните репозиторий с примером Python в вашу учетную запись GitHub.
- Перейдите в репозиторий python-sample-vscode-flask-tutorial .
- Выберите Форк в правом верхнем углу страницы.
- Выберите учетную запись GitHub. По умолчанию форк называется так же, как родительский репозиторий, но вы можете дать ему другое имя.
Внимание
В следующих процедурах может потребоваться создать подключение службы GitHub или вы можете быть перенаправлены на GitHub для входа, установки или авторизации Azure Pipelines. Следуйте инструкциям на экране, чтобы завершить процесс. Дополнительные сведения см. в разделе Доступ к репозиториям GitHub.
Создание конвейера
- В проекте Azure DevOps выберите , а затем выберите > в качестве расположения исходного кода.
- На экране "Выбор репозитория" выберите форкнутый пример репозитория.
- На экране "Настройка конвейера" выберите "Начальный конвейер".
Настройка конвейера
На экране проверки конвейера YAML замените содержимое созданного azure-pipelines.yml файла следующим кодом. Код:
- Устанавливает необходимые версии Python и зависимости.
- Пакеты упаковывают артефакты в ZIP-архив.
- Публикует архив в ваш конвейер.
- Выполняет тесты
trigger:
- main
pool:
vmImage: ubuntu-latest
strategy:
matrix:
Python310:
python.version: '3.10'
Python311:
python.version: '3.11'
Python312:
python.version: '3.12'
steps:
- task: UsePythonVersion@0
inputs:
versionSpec: '$(python.version)'
displayName: 'Use Python $(python.version)'
- script: |
python -m pip install --upgrade pip
pip install -r requirements.txt
displayName: 'Install dependencies'
- task: ArchiveFiles@2
displayName: 'Archive files'
inputs:
rootFolderOrFile: $(System.DefaultWorkingDirectory)
includeRootFolder: false
archiveType: zip
archiveFile: $(Build.ArtifactStagingDirectory)/$(Build.BuildId)-$(python.version).zip
replaceExistingArchive: true
- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: '$(Build.ArtifactStagingDirectory)'
ArtifactName: 'drop'
publishLocation: 'Container'
- script: |
pip install pytest pytest-azurepipelines
pytest
displayName: 'pytest'
Настройте azure-pipelines.yml в соответствии с конфигурацией проекта.
- Если у вас другой пул агентов, измените параметр пула
name
. - При необходимости измените версию Python на версию, установленную на локальном агенте.
trigger:
- main
pool:
name: '<your-pool-name or default>'
steps:
- task: UsePythonVersion@0
inputs:
versionSpec: '3.12'
displayName: 'Use Python 3.12'
- script: |
python -m pip install --upgrade pip
pip install -r requirements.txt
displayName: 'Install dependencies'
- task: ArchiveFiles@2
displayName: 'Archive files'
inputs:
rootFolderOrFile: $(System.DefaultWorkingDirectory)
includeRootFolder: false
archiveType: zip
archiveFile: $(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip
replaceExistingArchive: true
- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: '$(Build.ArtifactStagingDirectory)'
ArtifactName: 'drop'
publishLocation: 'Container'
- script: |
pip install pytest pytest-azurepipelines
pytest
displayName: 'pytest'
Запустите ваш конвейер
Нажмите кнопку "Сохранить и запустить", а затем нажмите кнопку "Сохранить" и снова запустить.
На вкладке "Сводка " отображается состояние запуска конвейера.
Чтобы просмотреть артефакт сборки, выберите опубликованную ссылку на вкладке "Сводка".
На странице "Артефакты" показаны опубликованные артефакты сборки.
На странице "Артефакты" показаны опубликованные артефакты сборки.
Чтобы просмотреть результаты теста, перейдите на вкладку "Тесты ".
Очистка
Завершив работу с этим кратким руководством, вы можете удалить созданный проект Azure DevOps.
- В вашем проекте выберите значок настроек в левом нижнем углу страницы.
- В нижней части страницы обзора проекта нажмите кнопку "Удалить".
- Введите имя проекта и нажмите кнопку "Удалить".
Поздравляем, вы успешно создали и запустили конвейер, который создал и протестировал приложение Python. Теперь вы можете использовать Azure Pipelines для создания, тестирования и развертывания приложений и сценариев Python в рамках системы непрерывной интеграции и непрерывной доставки (CI/CD).