验证 passenger nginx 模块是否已成功编译的最佳方法?
Best way to verify that passenger nginx module has been successfully compiled?
我有几台厨师管理的服务器,每台服务器 运行 与一个堆栈:
- nginx
- phusion 乘客
我想让 passenger gem 升级过程自动化,能够有条件地跳过 passenger nginx 模块编译,这意味着我不希望编译过程发生在每个厨师身上 运行 , 仅在确定有必要的 运行s 上(通常是因为 passenger gem 版本正在升级,而且在 passenger gem 未升级但编译的情况下之前失败了)。
目前我检查 passenger 的版本是 运行,但是在 gem 实际上安装到正确版本但编译失败的情况下,幂等性检查太宽泛,我无法做到当我需要时尝试编译。
验证passenger nginx模块已经编译的最准确的方法是什么?我可以检查其存在的稳定位置是否有特定文件?
现在我的厨师区是这样的:
execute "compile passenger nginx module" do
ruby_vers = node[:ruby][:global_version]
passenger_vers = node[:passenger][:version]
ruby_parent_vers = node[:ruby_parent_vers]
command "export ORIG_PATH=\"$PATH\"; sudo -s -E; export PATH=\"$ORIG_PATH\"; /usr/bin/ruby /usr/lib/ruby/gems/2.4.0/gems/passenger-#{passenger_vers}/bin/passenger-install-nginx-module --auto --auto-download"
# check for a difference between passenger version requested and passenger version running
not_if { `passenger --version` == cur_vers }
end
你试过了吗passenger-config about compiled
?
我有几台厨师管理的服务器,每台服务器 运行 与一个堆栈:
- nginx
- phusion 乘客
我想让 passenger gem 升级过程自动化,能够有条件地跳过 passenger nginx 模块编译,这意味着我不希望编译过程发生在每个厨师身上 运行 , 仅在确定有必要的 运行s 上(通常是因为 passenger gem 版本正在升级,而且在 passenger gem 未升级但编译的情况下之前失败了)。
目前我检查 passenger 的版本是 运行,但是在 gem 实际上安装到正确版本但编译失败的情况下,幂等性检查太宽泛,我无法做到当我需要时尝试编译。
验证passenger nginx模块已经编译的最准确的方法是什么?我可以检查其存在的稳定位置是否有特定文件?
现在我的厨师区是这样的:
execute "compile passenger nginx module" do
ruby_vers = node[:ruby][:global_version]
passenger_vers = node[:passenger][:version]
ruby_parent_vers = node[:ruby_parent_vers]
command "export ORIG_PATH=\"$PATH\"; sudo -s -E; export PATH=\"$ORIG_PATH\"; /usr/bin/ruby /usr/lib/ruby/gems/2.4.0/gems/passenger-#{passenger_vers}/bin/passenger-install-nginx-module --auto --auto-download"
# check for a difference between passenger version requested and passenger version running
not_if { `passenger --version` == cur_vers }
end
你试过了吗passenger-config about compiled
?