Как использовать Bazel в конвейерах Azure? - PullRequest
0 голосов
/ 30 мая 2019

Я попытался настроить конвейер сборки Azure, который использует Bazel (0.26.0)

Файл определения YAML моего конвейера выглядит следующим образом:

trigger:
- master

pool:
  vmImage: 'windows-2019'

steps:
- script: echo Hello, world!
  displayName: 'Run a one-line script'

- script: |
    bazel version
    echo Add other tasks to build, test, and deploy your project.
    echo See https://aka.ms/yaml
  displayName: 'Run a multi-line script'

В настоящее время я пытаюсь выяснить, какая версия Bazel установлена, вызывая bazel version - но Azure DevOps сообщает:

'bazel' is not recognized as an internal or external command,
operable program or batch file.
Cmd.exe exited with code '9009'.

Интересно, как я могу установить и запустить Bazel в конвейере Azure - есть ли намеки на это?

Похоже, что этот проект заработал. Но я не понимаю, как.

1 Ответ

3 голосов
/ 30 мая 2019

Вы получили эту ошибку, потому что вы используете агент, размещенный в Microsoft, в этих агентах bazel не установлен. В приведенном вами примере они используют Self Hosted (Private) Agent и устанавливают bazel на свой агентский компьютер.

1) Установите Self Hosted Agent на свой частный компьютер и установите на него bazel.

2) Установите bazel во время конвейера сборки с помощью choco (простая задача скрипта):

choco install bazel

После установки вы можете использовать его.

P.S Я попытался установить через choco, и я получил ошибку, но bazel действительно установлен и на следующем шаге bazel version дал результаты, поэтому в задаче установки поставьте continueOnError = true. (ошибка в шаге Python, если ваш проект не с Python, все в порядке).

...