Я попытался настроить конвейер сборки Azure, использующий Базель (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 — какие-нибудь намеки на это?
Кажется, этот проект заработал. Но я не понимаю как.
Вы получили эту ошибку, потому что используете агент, размещенный в Microsoft, в этих агентах bazel
не установлен. В приведенном вами примере они используют самостоятельный (частный) агент и устанавливают bazel
на свой агентский компьютер.
1) Установите Self Hosted Agent на свою частную машину и установите bazel
на машину.
2) Установите bazel
во время конвейера сборки с помощью choco
(простая задача сценария):
choco install bazel
После того, как вы установите его, вы можете использовать его.
P.S. Пробовал установить через choco
и выдало ошибку но bazel
действительно установил и на следующем шаге bazel version
дал результат, поэтому в задаче установки поставил continueOnError = true
. (ошибка на шаге python, если ваш проект не с python, все в порядке).
Просто к вашему сведению, у меня не было ошибки при запуске команды как встроенной команды Powershell, но это заняло 3 минуты!