summaryrefslogtreecommitdiffstats
path: root/lib/puppet/provider/package/freebsd.rb
diff options
context:
space:
mode:
authorLuke Kanies <luke@madstop.com>2008-04-21 23:45:53 -0500
committerLuke Kanies <luke@madstop.com>2008-04-21 23:45:53 -0500
commit0e8a1c9f6ac45e9e6f6dcf6464ad4d2780201ce1 (patch)
tree0bcf46830c65667ebf85e44f8699243f8da5a5f3 /lib/puppet/provider/package/freebsd.rb
parent58fb416e9f52a9dc834b735ffa7e5c425495c982 (diff)
parent62ca72608c8fcded624c46c6951b9381a7284a80 (diff)
downloadpuppet-0e8a1c9f6ac45e9e6f6dcf6464ad4d2780201ce1.tar.gz
puppet-0e8a1c9f6ac45e9e6f6dcf6464ad4d2780201ce1.tar.xz
puppet-0e8a1c9f6ac45e9e6f6dcf6464ad4d2780201ce1.zip
Merge branch '0.24.x'
Conflicts: bin/puppetca
Diffstat (limited to 'lib/puppet/provider/package/freebsd.rb')
-rwxr-xr-xlib/puppet/provider/package/freebsd.rb19
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