diff options
author | James Turnbull <james@lovedthanlost.net> | 2008-04-19 21:13:31 +1000 |
---|---|---|
committer | James Turnbull <james@lovedthanlost.net> | 2008-04-19 21:13:31 +1000 |
commit | b5640a186d0e7103d5d7f5cdfd309342a1634de3 (patch) | |
tree | d968265f2e02a238273cfe1d02d332e123ee7063 | |
parent | 0a5d8a639014495388b2b6c87c295ab4877f9139 (diff) | |
download | puppet-b5640a186d0e7103d5d7f5cdfd309342a1634de3.tar.gz puppet-b5640a186d0e7103d5d7f5cdfd309342a1634de3.tar.xz puppet-b5640a186d0e7103d5d7f5cdfd309342a1634de3.zip |
Pushed patch for ticket #1187 - freebsd pkg_add support
-rwxr-xr-x | lib/puppet/provider/package/freebsd.rb | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/lib/puppet/provider/package/freebsd.rb b/lib/puppet/provider/package/freebsd.rb index f98f3064e..18df015fd 100755 --- a/lib/puppet/provider/package/freebsd.rb +++ b/lib/puppet/provider/package/freebsd.rb @@ -18,11 +18,22 @@ Puppet::Type.type(:package).provide :freebsd, :parent => :openbsd do def install should = @resource.should(:ensure) - if @resource[:source] - return super + if @resource[:source] =~ /\/$/ + if @resource[:source] =~ /^(ftp|https?):/ + withenv :PACKAGESITE => @resource[:source] do + pkgadd "-r", @resource[:name] + end + else + withenv :PKG_PATH => @resource[:source] do + pkgadd @resource[:name] + end + end + else + if @resource[:source] + Puppet.warning "source is defined but does not have trailing slash, ignoring %s" % @resource[:source] + end + pkgadd "-r", @resource[:name] end - - pkgadd "-r", @resource[:name] end def query |