Где мы можем указать путь к репозиторию Github в Задачах в Azure Devops?

Я создал группу задач для запуска скриптов платформы роботов в Azure DevOps. В группу задач я добавил следующие задачи:

  1. Использовать версию Python
  2. Скрипт Python для установки фреймворка робота
  3. Задача скрипта Python для запуска скрипта фреймворка робота
  4. Опубликовать результаты теста

В задаче Python script task to run robot framework script у меня есть следующий встроенный скрипт:

pip install pytest pytest-azurepipelines
pytest
robot --pythonpath . -x outputxunit.xml TestScenarios.robot

TestScenarios.robot присутствует в моем репозитории GitHub. Итак, мой вопрос: где я могу указать, что TestScenarios.robot нужно забрать из моего репозитория GitHub. Я не могу понять, как это сделать в задачах. Я знаю, что при настройке конвейера у нас есть опция конфигурации, где мы можем указать репозиторий GitHub. Но я хочу знать, как мы можем предоставить детали репозитория GitHub для этой задачи? Затем я хочу использовать эту группу задач в моем этапе выпуска, чтобы каждый раз, когда мы развертываем выпуск, группа задач запускалась для запуска сценария автоматизации. Дайте мне знать, если вам понадобятся более подробные сведения.


person Komz    schedule 02.09.2020    source источник


Ответы (1)


Для сборки конвейера:

Когда начнется сборка, исходный репозиторий будет загружен в $(Build.SourcesDirectory).

Таким образом, вы можете указать путь репо как $(Build.SourcesDirectory)/Scriptfolder/xx.robot.

Вот мой пример:

Xx.robot находится в ScriptFolder.

введите описание изображения здесь

Скрипт фреймворка робота:

robot --pythonpath . -x outputxunit.xml $(build.sourcesdirectory)/ScriptFolder/TestCases.robot

Для конвейера выпуска

В выпуске исходный код будет загружен на $(System.ArtifactsDirectory)/{Source alias }

Примечание: Source alias находится в Release definition -> Artifacts.

введите описание изображения здесь

Вот мой пример сценария:

robot --pythonpath . -x outputxunit.xml $(System.ArtifactsDirectory)/_lujinlou_TestPython/ScriptFolder/TestCases.robot

Вот документы о Build Переменные и Переменные выпуска.

Обновление:

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

введите описание изображения здесь

И вы можете получить псевдоним Source.

Путь к скрипту: $(System.ArtifactsDirectory)/{Source alias}/TestScenarios.robot

person Kevin Lu-MSFT    schedule 03.09.2020
comment
Спасибо за ответы. Я попробую это. - person Komz; 03.09.2020
comment
@Komz. Не стесняйтесь, дайте мне знать, если ответ может вам помочь. Если у вас все еще есть вопросы, я все равно буду здесь, чтобы помочь вам. - person Kevin Lu-MSFT; 03.09.2020
comment
@ Kevin Lu-MSFT Извините, но я не могу разобраться, все еще застрял. У меня есть TestScenarios.robot в моем github ABC / xyz - главная ветка - person Komz; 03.09.2020
comment
@Komz. ABC и xyz - это имя папки? ИЛИ ABC - это имя репо, xyz - это имя папки? В последнем случае вам просто нужно указать путь: $(build.sourcesdirectory)/xyz/xxx.robot. Вы в процессе сборки или выпуска? - person Kevin Lu-MSFT; 03.09.2020
comment
С другой стороны, можете ли вы поделиться своим текущим путем конфигурации? Спасибо. - person Kevin Lu-MSFT; 03.09.2020
comment
@ Kevin Lu-MSFT. Извините, но я не могу разобраться. У меня есть TestScenarios.robot в моем github ABC / xyz - master branch. Это мое личное репо. Когда я создал новый конвейер, во время настройки мне пришлось предоставить учетные данные для подключения к этому Github. И это не то место, где будут скачиваться исходники релиза. По сути, я создал конвейер yaml для запуска сценариев автоматизации. Но теперь мы хотим, чтобы тестовые примеры запускались автоматически при развертывании Release. Используя триггеры, я не хочу этого делать, поэтому он попросил меня создать группу задач, в которой были бы все задачи и шаги, которые присутствуют в моем конвейере yml. - person Komz; 03.09.2020
comment
@ Kevin Lu-MSFT Я нахожусь в стадии выпуска. xyz - имя репо - person Komz; 03.09.2020
comment
@Komz. Спасибо за Вашу информацию. Я, наверное, понимаю вашу конфигурацию. Пожалуйста, проверьте обновление. Вы можете попробовать сценарий: robot --pythonpath . -x outputxunit.xml $(System.ArtifactsDirectory)/{Source alias}/TestScenarios.robot - person Kevin Lu-MSFT; 03.09.2020