厨师配方资源仅在完全运行oracle setup.exe后如何运行配方/资源

时间:2018-09-11 05:47:52

标签: oracle installation chef oracle12c chef-recipe

我正在编写一个厨师食谱,使用厨师资源“ execute”来安装Oracle EE软件(通过在静默模式下运行setup.exe)。


str_command = "<dir>/setup.exe -silent -nowait -noconfig  -waitforcompletion ORACLE_HOME=... ORACLE_BASE=... " # other parameters for silent installation

Chef::Log.info("-before-")
execute 'install_oracle_ee' do
    command str_command
    live_stream true
    timeout "#{node['mycookbk']['timeout']['num']}"
    not_if {File.exists?("#{node['mycookbk']['oracle']['oracle_home']}/bin")}
end
Chef::Log.info("-after-")

软件安装成功后,我需要执行资源/配方,将“创建数据库实例”,然后“创建数据库”。


在运行命令后,执行资源已存在,并直接移至运行列表中的下一个资源/配方。

但是在执行此操作之前,我需要确保设置已完成。有人可以建议一种方法吗?

1 个答案:

答案 0 :(得分:0)

这意味着该命令实际上并没有在等待完成。 Chef确实在等待所提供的可执行文件完成(实际上,它必须这样做,没有选择不这样做)。仔细检查安装程序的CLI选项?