Chef 'wlp' 食谱在尝试下载 Liberty 时抛出 404 错误

Chef 'wlp' cookbook throwing 404 error when trying to download Liberty

我认为url 'used to be available'这里,但是现在,由于涉及接受许可协议的事情,它不再是:

https://developer.ibm.com/wasdev/downloads/liberty-profile-using-non-eclipse-environments/wlp-developers-runtime-8.5.5.4.jar

这是食谱页面:https://supermarket.chef.io/cookbooks/wlp/versions/0.2.2

错误:

ec2-54-67-111-140.us-west-1.compute.amazonaws.com Error executing action create on 
resource 'remote_file[/var/chef/cache/wlp-developers-runtime-8.5.5.4.jar]' 
ec2-54-67-111-140.us-west-1.compute.amazonaws.com 
ec2-54-67-111-140.us-west-1.compute.amazonaws.com 
ec2-54-67-111-140.us-west-1.compute.amazonaws.com 
ec2-54-67-111-140.us-west-1.compute.amazonaws.com Net::HTTPServerException 
ec2-54-67-111-140.us-west-1.compute.amazonaws.com ------------------------ 
ec2-54-67-111-140.us-west-1.compute.amazonaws.com 404 "Not Found" 
ec2-54-67-111-140.us-west-1.compute.amazonaws.com 
ec2-54-67-111-140.us-west-1.compute.amazonaws.com     

我的厨师角色

{"name":"websphere",
  "default_attributes" : {
   "wlp" : {
     "archive" : {
       "accept_license" : true,
       "base_url" : "https://developer.ibm.com/wasdev/downloads/liberty-profile-using-non-eclipse-environments"    
      }
   },
  "java" : { 
   "install_flavor" : "oracle", 
   "jdk_version" : "7", 
   "oracle" : { 
     "accept_oracle_download_terms" : true 
   } 
 } 
},
"run_list":[
 "recipe[chef-client]",
 "recipe[application_wlp]",
 "recipe[wlp]"
]
 }

我检查了 wlp cookbook 的输出 default.rb:

p "*"25 
p node[:wlp][:archive][:base_url] 
p "*"25 #<> URL location of the runtime archive. 
default[:wlp][:archive][:runtime][:url] = "#{node[:wlp][:archive][:base_url]}/wlp-developers-runtime-8.5.5.4.jar"
p ""25 p default[:wlp][:archive][:runtime][:url] 
p ""*25

ec2-54-67-111-140.us-west-1.compute.amazonaws.com 
"*******" 
ec2-54-67-111-140.us-west-1.compute.amazonaws.com   "https://developer.ibm.com/wasdev/downloads/liberty-profile-using-non-eclipse-environments" ec2-54-67-    111-140.us-west-1.compute.amazonaws.com 
"*******" 
ec2-54-67-111-140.us-west-1.compute.amazonaws.com 
"*******" 
ec2-54-67-111-140.us-west-1.compute.amazonaws.com "https://developer.ibm.com/wasdev/downloads/liberty-profile-using-non-eclipse-environments/wlp-developers-runtime-8.5.5.4.jar" ec2-54-67-111-140.us-west-1.compute.amazonaws.com 

在浏览器中访问最后一个 url 确实会出现 404 错误。 Chef 如何下载这个 jar?

只要源站点不再允许直接下载,您就必须自己下载并将其托管在 http 服务器上。

然后通过覆盖您角色中已有 url 的 default[:wlp][:archive][:base][:url] 将其用作来源 url:

{"name":"websphere",
  "default_attributes" : {
   "wlp" : {
     "archive" : {
       "accept_license" : true,
       "base_url" : "https://<path to your internal hosting server>"    
      }
   },
  "java" : { 
   "install_flavor" : "oracle", 
   "jdk_version" : "7", 
   "oracle" : { 
     "accept_oracle_download_terms" : true 
   }
 } 
},
"run_list":[
 "recipe[chef-client]",
 "recipe[application_wlp]",
 "recipe[wlp]"
]
}