Chef infra Chef Elementy OS(在资源和软件包[apache2]';上执行“安装”操作时出错)

Chef infra Chef Elementy OS(在资源和软件包[apache2]';上执行“安装”操作时出错),chef-infra,devops,Chef Infra,Devops,代码: 系统信息: package("tree") do package_name "tree" action [:install] default_guard_interpreter :default declared_type :package cookbook_name "starter" recipe_name "default" end 最后我得到了这个问题的答案,请参考此链接 它使用gem_包快速搜索显示,基本操作系统使用apt,因此您肯定需要使用apt_包

代码:

系统信息:

package("tree") do
  package_name "tree"
  action [:install]
  default_guard_interpreter :default
  declared_type :package
  cookbook_name "starter"
  recipe_name "default"
end

最后我得到了这个问题的答案,请参考此链接


它使用gem_包

快速搜索显示,基本操作系统使用
apt
,因此您肯定需要使用
apt_包

chef_version=15.7.32
platform=elementary
platform_version=5.1.2
ruby=ruby 2.6.5p114 (2019-10-01 revision 67812) [x86_64-linux]
program_name=/usr/bin/chef-client
executable=/opt/chef-workstation/bin/chef-client
但你说这对你没用。我猜您遇到了一个恰当的错误,即无法找到包树的候选项。这是因为您需要在安装软件包之前运行
apt update
。您可以通过使用
apt\u update
resource预先设置包资源来实现这一点

apt_package 'tree' do
  action :install
end

我不能用chef安装任何软件包,但在我的机器上我可以安装这个软件包,为什么chef会出问题请帮助chef根本不知道软件包提供商的基本用途。通过快速搜索,它似乎是基于apt的,因此您需要用软件包资源替换
软件包
,选择基于平台族的用户提供商,您可以检查chef如何使用“ohai平台族”查看您的系统,并打开pull请求将其添加到apt中。软件包也不工作Gem\u软件包用于ruby gems。我怀疑您是否安装了ruby gem。正如您所说,我已更新了apt_软件包,但apt_软件包仍然不工作,在资源“apt_软件包[vim]上执行操作
install
时出错。您是否可以使用此新信息更新您的问题,并提供所有错误消息。
apt_package 'tree' do
  action :install
end
apt_update 'update' do
  action :update
end

apt_package 'tree' do
  action :install
end