Openvpn 由 Ubuntu 打包,因此它来自 Ubuntu 软件包存储库。Chef 使用资源的apt
包提供程序package
。这意味着当您package "openvpn"
在食谱中说时,Chef 在幕后查看节点的平台(例如,ubuntu 12.04)并使用apt-get install
它来安装它。如果您使用的是 CentOS,它将使用 yum 代替。
如果您想使用 S3 存储配置文件,您可以将源指定为带有远程文件的实际文件的 URI:
例子:
remote_file "/etc/openvpn/openvpn.conf" do
source "https://your-bukket.s3.amazonaws.com/openvpn.conf"
action :create
end
如果存储桶是私有的,您将需要使用aws_s3_file
来自Opscode 的“aws”食谱的替代资源。有关如何使用该资源的信息,请参阅自述文件 - 它传入 AWS 凭证以访问存储桶中的项目。
如果你想提供你自己的 openvpn 包并从 S3 下载它,你可以这样做:
remote_file "/tmp/openvpn-VERSION.deb" do
source "https://your-bukket.s3.amazonaws.com/openvpn-VERSION.deb"
action :create_if_missing
end
dpkg_package "openvpn" do
source "/tmp/openvpn-VERSION.deb"
action :install
end
(将 VERSION 替换为您的实际版本,或更改文件名以适合您的偏好)