【发布时间】:2014-11-16 19:36:30
【问题描述】:
我有一个名为 java 的(简化的)配方,当然可以安装 Java。
文件 recipes/default.rb
include_recipe "install_java"
文件配方/install_java.rb
# Install RPM from yum repo via yum_install library function
yum_install("jdk1.7.0_51")
# List the directories in /usr/java
jdk_dir = `ls -ld /usr/java/jdk1.* | sort | tail -1`
if jdk_dir.empty?
raise "Missing JDK installation"
end
当我通过“chef-client -o recipe[java]”运行食谱时
Synchronizing Cookbooks:
- java
Compiling Cookbooks...
ls: /usr/java/jdk1.*: No such file or directory
================================================ ============================= /var/chef/cache/cookbooks/java/recipes/default.rb 中的配方编译错误 ============================== ==============================================
RuntimeError
------------
Missing JDK installation
似乎没有调用 yum_install() 函数。但是,如果我将 install_java.rb 配方修改为只有
# Install RPM from yum repo via yum_install library function
yum_install("jdk1.7.0_51")
它有效。
这是为什么?
【问题讨论】:
标签: chef-infra