Некоторое время мы использовали Chef и Chocolatey по отдельности, и недавно начали использовать их вместе для простой установки некоторых пакетов Windows.
Например:
include_recipe 'chocolatey::default'
chocolatey_package 'git.install' do
action :install
end
chocolatey_package 'nuget.commandline' do
action :install
end
chocolatey_package 'docker-compose' do
action :install
version '1.21.2'
end
chocolatey_package 'gitlab-runner' do
action :install
version '11.0.0'
end
Этот рецепт сработал, но теперь мы получаем эти ошибки без каких-либо других изменений:
* chocolatey_package[git.install] action install
- install version 2.18.0 of package git.install
* chocolatey_package[nuget.commandline] action install
- install version 4.8.1 of package nuget.commandline
* chocolatey_package[docker-compose] action install
- install version 1.21.2 of package docker-compose
* chocolatey_package[gitlab-runner] action install
* No candidate version available for gitlab-runner
================================================================================
Error executing action `install` on resource 'chocolatey_package[gitlab-runner]'
================================================================================
Chef::Exceptions::Package
-------------------------
No candidate version available for gitlab-runner
Обратите внимание на успешные установкис последующим сбоем.
Это первоначально произошло для пакета git
, и из-за разочарования я изменил его на git.install
, что сработало.Но теперь это только начало происходить с gitlab-runner
.
Кто-нибудь видел этот тип отказа, когда он работает один день, а не следующий?Я проверил, что пакет существует, и я могу вручную вытащить его с помощью choco install
.
Моим следующим шагом по устранению неполадок может быть копание этого ресурса;Я знаю, что сообщение об ошибке может появиться при установке пакетов на платформах Linux, поэтому, возможно, описание ошибки вводит в заблуждение ... то есть chocolatey_package
либо выдает исключение, либо обработчик делает слишком общий перехват (чтобы использовать термины .NET),