pkgdmg.rb

Path: lib/puppet/provider/package/pkgdmg.rb
Last Update: Wed Dec 09 12:54:29 -0800 2009

pkgdmg.rb

Install Installer.app packages wrapped up inside a DMG image file.

Copyright (C) 2007 Jeff McCune Jeff McCune <jeff@northstarlabs.net>

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation (version 2 of the License) This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston MA 02110-1301 USA

Motivation: DMG files provide a true HFS file system and are easier to manage and .pkg bundles.

Note: the ‘apple’ Provider checks for the package name in /L/Receipts. Since we install multiple pkg‘s from a single source, we treat the source .pkg.dmg file as the package name. As a result, we store installed .pkg.dmg file names in /var/db/.puppet_pkgdmg_installed_<name>

Required files

puppet/provider/package   facter/util/plist   open-uri  

Methods

Public Class methods

JJM We store a cookie for each installed .pkg.dmg in /var/db

Public Instance methods

[Validate]