Можно ли создать пользовательскую задачу Azure DevOps в Powershell? - PullRequest
0 голосов
/ 24 марта 2020

Мы используем Azure DevOps Server 2019 (on-prem).

Я хотел бы написать пользовательскую задачу Azure DevOps в Powershell. Примеры, которые я видел до сих пор в Интернете, касаются его разработки в Typescript.

Интересно - это единственный способ? Можем ли мы использовать Powershell, например?

Ответы [ 2 ]

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

Да, вы можете использовать PowerShell в своей задаче сборки.

Вам необходимо отредактировать этот раздел в task.json:

  "execution": {
    "PowerShell3": {
      "target": "ps-script.ps1",
      "workingDirectory": "$(currentDirectory)"
    }
  }

И вам необходимо установить модуль VstsTaskSdk Powershell:

  • открыть Powershell
  • перейдите к root/buildtask директории вашего расширения
  • выполните mkdir ps_modules и затем перейдите к новой директории
  • ваш pwd должен прочитать root/buildtask/ps_modules
  • execute Save-Module -Name VstsTaskSdk -Path ., который сохранит модуль на диск.
  • Выровняйте структуру каталогов, удалив номер версии. Например, у вас будет путь root/buildtask/ps_modules/VstsTaskSdk/0.10.0/*, который теперь должен читаться как root/buildtask/ps_modules/VstsTaskSdk/*

Существует полное руководство здесь .

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

Примечание: это работает только на windows машинах.

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

Да, вы можете использовать сценарий PS непосредственно в своей пользовательской задаче. Вы можете настроить task.json следующим образом:

"execution": {
    "PowerShell3": {
        "target": "script.ps1",
         "workingDirectory": "$(currentDirectory)"
    }
 }
...