首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Chef + Chocolatey -“(Package)没有可用的候选版本”

Chef + Chocolatey -“(Package)没有可用的候选版本”
EN

Stack Overflow用户
提问于 2018-09-12 21:48:35
回答 1查看 899关注 0票数 1

我们分开使用Chef和Chocolatey已经有一段时间了,最近开始一起使用它们来轻松安装一些Windows软件包。

例如:

代码语言:javascript
复制
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

这个方法已经奏效了,但现在我们已经得到了这些错误,而没有任何其他的改变:

代码语言:javascript
复制
* 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要么抛出了异常,要么处理程序对catch的操作过于泛化(使用.NET术语)。

EN

回答 1

Stack Overflow用户

发布于 2020-02-23 00:56:06

这是我遇到过的最烦人的问题之一。事实上,Chocolatey.org是非常不可靠的。但是,我可以在这个错误之后立即在命令行上直接安装,但是通过chocolatey_package chef资源,它几乎每次都会失败,并显示可怕的"No candidate version available“,而不管chocolatey.org的状态如何。希望厨师最终能让他们行动起来。同时,这里有一个已经在我身上工作了很长时间的变通方法。

代码语言:javascript
复制
choco source add -n=local -s"[PATH]" -u=[USERNAME] -p=[PASSWORD]

然后转到chocolatey.org,找到您的包,将其下载到该位置,然后重新运行您的食谱。这非常有效,因为您不再像以前那样依赖外部资源,而且速度更快,但请记住,当新的包发布时,您很可能需要用最新的包刷新。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52296762

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档