【问题标题】:Chef + Chocolatey - "No candidate version available for (package)"Chef + Chocolatey - “没有可用于(包)的候选版本”
【发布时间】:2018-09-12 13:48:35
【问题描述】:

我们已经单独使用 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 术语) .

【问题讨论】:

  • 假设这发生在最近 1 小时左右,这可能与网站性能的一些问题有关:status.chocolatey.org
  • @GaryEwanPark 这值得关注,但它从上周开始使用 git 包,现在使用 gitlab-runnerone。不过感谢您提及...因为这一定是我无法进行更多测试的原因:)
  • 您的设置是否在组织内?还是个人设置?
  • 这是一个个人设置...只是一个基本的 Chocolatey 安装并使用公共存储库。但是......我确实成功地运行了。成功的时机恰逢 Chocolatey.org 问题的清理,但对我来说,这个问题从昨天开始,上周也发生了。我想这可能仍然是站点/存储库的稳定性问题?
  • 本来可以的。状态页面上列出了其他已知的中断。我问的原因是,虽然我们试图让一切正常运行,但不能保证网站正常运行。这就是我们建议将包裹带回家的地方,这样一切都会正常进行。

标签: chef-infra chocolatey


【解决方案1】:

这是我遇到过的最烦人的问题之一。 Chocolatey.org 确实非常不可靠。但是,我可以在出现此错误后立即在命令行上直接安装,但是通过 Chocolatey_package 厨师资源,它几乎每次都会失败并出现可怕的“没有可用的候选版本”,无论 Chocolatey.org 的状态如何。希望厨师最终能一起行动。同时,这里有一个对我有用很长一段时间的解决方法。

choco source add -n=local -s"[PATH]" -u=[USERNAME] -p=[PASSWORD]

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-08-02
    • 2016-06-27
    • 2021-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-17
    相关资源
    最近更新 更多