Sha256: 5cbd5d6368e2a346ae12f01f60610d8a6d93c2f7a9dd79c51f5ff8bc5c16afe0

Contents?: true

Size: 884 Bytes

Versions: 6

Compression:

Stored size: 884 Bytes

Contents

Puppet::Type.type(:package).provide :aptitude, :parent => :apt, :source => :dpkg do
    desc "Package management via ``aptitude``."

    has_feature :versionable

    commands :aptitude => "/usr/bin/aptitude"
    commands :aptcache => "/usr/bin/apt-cache"

    ENV['DEBIAN_FRONTEND'] = "noninteractive"

    def aptget(*args)
        args.flatten!
        # Apparently aptitude hasn't always supported a -q flag.
        if args.include?("-q")
            args.delete("-q")
        end
        output = aptitude(*args)

        # Yay, stupid aptitude doesn't throw an error when the package is missing.
        if args.include?(:install) and output =~ /Couldn't find any package/
            raise Puppet::Error.new(
                "Could not find package %s" % self.name
            )
        end
    end

    def purge
        aptitude '-y', 'purge', @resource[:name]
    end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
puppet-0.25.5 lib/puppet/provider/package/aptitude.rb
puppet-0.25.4 lib/puppet/provider/package/aptitude.rb
puppet-0.25.3 lib/puppet/provider/package/aptitude.rb
puppet-0.25.2 lib/puppet/provider/package/aptitude.rb
puppet-0.25.1 lib/puppet/provider/package/aptitude.rb
puppet-0.25.0 lib/puppet/provider/package/aptitude.rb