我还没有遇到可以在本地复制/移动文件的Chef资源。例如,我想下载码头高潮并将其解压缩。完成后,将所有文件复制到一个特定的文件夹中,如下所示:
# mv /var/tmp/jetty-hightide-7.4.5.v20110725/* /opt/jetty/
顺便说一句,jettyhightide解压缩时,会为您提供一个文件夹,并且在该文件夹中还包含其他文件。因此unzip jetty-hightide-7.4.5.v20110725.zip -d /opt/jetty/
是没有用的,因为它将创建一个目录,/opt/jetty/jetty-hightide-7.4.5.v20110725/*
而我真正想要的是/opt/jetty/*
。因此,我正在Chef中寻找本地副本/移动资源。
我通过使用bash
资源来使其工作,如下所示:
bash "install_jettyhightide" do
code <<-EOL
unzip /var/tmp/jetty-hightide-7.4.5.v20110725.zip -d /opt/jetty/
mv /opt/jetty/jetty-hightide-7.4.5.v20110725/* /opt/jetty/
cp /opt/jetty/bin/jetty.sh /etc/init.d/jetty
update-rc.d jetty defaults
EOL
end
但是我真的希望厨师能做到这一点。在本地复制/移动文件将是系统管理员最需要执行的任务。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句