如何解决使用厨师客户端版本 14.6.47 未安装 7zip 的错误

问题描述 投票:0回答:1

我遇到以下错误

Recipe: 7zip::default[0m
amazon-ebs:   * windows_zipfile[c:/dirname/] action unzip
amazon-ebs:     [0m
amazon-ebs:     ================================================================================[0m
amazon-ebs:     [31mError executing action `unzip` on resource 'windows_zipfile[c:/dirname/]'[0m
amazon-ebs:     ================================================================================[0m
amazon-ebs:
amazon-ebs: [0m    NameError[0m
amazon-ebs:     ---------[0m
amazon-ebs:     undefined local variable or method `source' for #<#<Class:0x0000000003f01f60>:0x0000000006da13c0>[0m

下面是我的代码相关的 7zip 食谱。

windows_zipfile 'c:/dirname/' do
  source "#{node[:packages][:ziputil]}"
  action :unzip
  not_if {::File.exists?('c:/dirname/7za.exe')}
end

源 URI 为:

http://downloads.sourceforge.net/sevenzip/7za920.zip

我尝试将厨师客户端版本更新到 14.2.0 和 15.1.36 等版本,但这没有帮助?

有人可以建议吗?我们还需要更新其他内容吗?

chef-infra 7zip cookbook
1个回答
0
投票

windows_zipfile
资源似乎来自超市的windows食谱。这似乎已被弃用。由于您现在的 Chef-client > 15,您可以使用 archive_file 资源。像下面这样的东西应该有效:

remote_file 'C:/Users/Public/7za920.zip' do
  source 'http://downloads.sourceforge.net/sevenzip/7za920.zip'
  action :create
end

archive_file 'C:/Users/Public/7za920.zip' do
  destination 'C:/Users/Public/7zip'
  action :extract
end

您可以根据需要替换路径和属性。

还有一个windows_package资源可以直接安装MSI,可以从https://www.7-zip.org/download.html下载。

© www.soinside.com 2019 - 2024. All rights reserved.