在厨师食谱中放置 python 个脚本

place python script in chef cookbook

我有一个在服务器上部署 ear 文件的 python 脚本,如何使用 chef 将这个脚本执行到 bootstrap 一个 linux 节点?

尝试了如下食谱,但它无法识别我的 python 脚本,该脚本位于我食谱的 "mycookbook\files\default\deploy.py" 文件夹中。

execute 'executeFile' do
 command "python #{'deploy.py'}"
end

已尝试提供完整的文件路径,但仍然无法识别该文件。如何使用厨师的执行资源在食谱中执行 python 脚本?

使用 poise-python 食谱的 python_execute 资源:

cookbook_file "/root/deploy.py" do
  source "deploy.py"
end

python_execute "/root/deploy.py"

如果您调整命令行,您也可以使用普通的 execute 资源。重要的一点是您需要使用 cookbook_file 将文件从食谱实际复制到节点上的某个位置。