Issue #15629 has been reported by jayendren maduray.

----------------------------------------
Feature #15629: puppet package provider portupgrade -> install_options support
https://projects.puppetlabs.com/issues/15629

Author: jayendren maduray
Status: Unreviewed
Priority: Normal
Assignee: 
Category: package
Target version: 2.7.x
Affected Puppet version: 2.7.16
Keywords: freebsd portupgrade.rb install_options
Branch: 


<ins>class entry:</ins>

    package { 'dns/unbound':
    ensure          => 'installed',
    provider        => 'portupgrade',
    install_options => '-m "CONFIGURE_ARGS=--with-ssl=/usr/local" -m 
"CONFIGURE_ARGS=--with-ldns-builtin" -m "CONFIGURE_ARGS=--disable-gost" -m 
"CONFIGURE_ARGS=--with-libevent=/usr/local"'
    }

<ins>puppet log:</ins>
    info: /Package[dns/unbound]: Provider portupgrade does not support features 
install_options; not managing attribute install_options

<ins>patch:</ins>
    --- portupgrade.rb  2012-07-20 11:15:00.000000000 +0200
    +++ /root/portupgrade.rb    2012-07-20 11:10:35.000000000 +0200
    @@ -9,7 +9,7 @@
    for the portupgrade port."
    ## has_features is usually autodetected based on defs below.
    -   has_features :installable, :uninstallable, :upgradeable, 
:install_options
    +  # has_features :installable, :uninstallable, :upgradeable
    commands :portupgrade   => "/usr/local/sbin/portupgrade",
    :portinstall   => "/usr/local/sbin/portinstall",
    @@ -35,7 +35,7 @@
    # regex to match output from pkg_info
    regex = %r{^(\S+)-([^-\s]+):(\S+)$}
    # Corresponding field names
    -    fields = [:portname, :ensure, :portorigin, :install_options]
    +    fields = [:portname, :ensure, :portorigin]
    # define Temporary hash used, packages array of hashes
    hash = Hash.new
    packages = []
    @@ -63,7 +63,6 @@
    # Set :provider to this object name
    hash[:name] = hash[:portorigin]
    hash[:provider] = self.name
    -        hash[:options] = hash[:install_options]
    # Add to the full packages listing
    packages << new(hash)
    @@ -82,7 +81,7 @@
    def install
    Puppet.debug "portupgrade.install() - Installation call on 
#{@resource[:name]}"
    # -M: yes, we're a batch, so don't ask any questions
    -    cmdline = ["-M BATCH=yes", @resource[:name], 
@resource[:install_options]]
    +    cmdline = ["-M BATCH=yes", @resource[:name]]
    # FIXME: it's possible that portinstall prompts for data so locks up.
    begin

<ins>puppet log:</ins>
    debug: Puppet::Type::Package::ProviderPortupgrade: Executing 
'/usr/local/sbin/portinstall -M BATCH=yes dns/unbound -m 
"CONFIGURE_ARGS=--with-ssl=/usr/local" -m "CONFIGURE_ARGS=--with-ldns-builtin" 
-m "CONFIGURE_ARGS=--disable-gost" -m 
"CONFIGURE_ARGS=--with-libevent=/usr/local"'
    notice: 
/Stage[main]//Node[freebsd_anycast_dns_server_unbound]/Package[dns/unbound]/ensure:
 created
<ins>unbound:</ins>
    # unbound -h
    usage:  unbound [options]
    start unbound daemon DNS resolver.
    -h  this help
    -c file     config file to read instead of 
/usr/local/etc/unbound/unbound.conf
    file format is described in unbound.conf(5).
    -d  do not fork into the background.
    -v  verbose (more times to increase verbosity)
    Version 1.4.17
    linked libs: libevent 1.4.14b-stable (it uses kqueue), ldns 1.6.13, OpenSSL 
0.9.8q 2 Dec 2010
    linked modules: validator iterator
    configured for amd64-portbld-freebsd9.0 on Fri Jul 20 11:15:56 SAST 2012 
with options: '--with-ssl=/usr' '--disable-gost' '--disable-ecdsa' 
'--with-libevent=/usr/local' '--prefix=/usr/local' '--mandir=/usr/local/man' 
'--infodir=/usr/local/info/' '--build=amd64-portbld-freebsd9.0'
    BSD licensed, see LICENSE in source package for details.
    Report bugs to [email protected]


-- 
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
http://projects.puppetlabs.com/my/account

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Bugs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/puppet-bugs?hl=en.

Reply via email to