On Mon, Jun 29, 2009 at 9:10 AM, Jason Hueske<schwi...@gmail.com> wrote:
>
> The potential for a mac-repository functionality is exactly what led
> me to puppet in the first place, so that is very interesting to hear.
> I will be keeping my eye on the munkie!
>
> It seems that flat packages would not suffer from the identifier
> problem that you have with Tiger pkgs/dmgs because they don't have to
> be monkeyed with for distribution, so the pkgdmg problem would at
> least be moot moving forward with newer systems.

Yes. You'd lose the current ability of the pkgdmg provider to install
multiple pkgs from a single dmg though.

>
> Does munkie "know" which packages are installed by looking at the
> receipts/bom db? If so, leveraging that would seem to make a lot of
> sense for "legacy" packages..

It collates information together from both the old style
"/Library/Receipts" for bundled packages and the new style sqlite db
for flat packages.

It's still a very young project, but I really do feel that a Puppet
Munki provider could give us something really quite wonderful on the
Mac platform.



>
> Jason
>
> On Jun 29, 2009, at 10:40 AM, Nigel Kersten wrote:
>
>>
>> So along these lines, there are two things I've been thinking about to
>> improve package distribution with Puppet.
>>
>> a) Add a parameter called something like "creates" that would be an
>> array of files and/or directories that a given package is expected to
>> create. If any of these are missing, Puppet reinstalls the package,
>> regardless of the state of the marker file.
>>
>> b) Work on a "munki" provider.
>>
>> "Munki" is a project a friend of mine Greg Neagle has been working on
>> to produce a good third party pkg based repository system for OS X.
>>
>> http://code.google.com/p/munki/
>>
>> Munki "knows" whether a given package is installed, flat or bundle
>> based, so it could be used to solve this problem.
>>
>> The primary problem we have with the pkgdmg provider is that there is
>> no necessary relationship between the dmg name and the pkg bundle
>> identifier, and the marker file is based upon the former, whereas the
>> package receipt is based upon the latter.
>>
>> Unless we changed the pkgdmg provider to mount every single dmg and
>> inspect the contents (bad idea) Puppet has no visibility to the pkg
>> contained within the dmg.
>>
>>
>>
>> On Mon, Jun 29, 2009 at 7:27 AM, Udo
>> Waechter<udo.waech...@uni-osnabrueck.de> wrote:
>>> Hi Gary,
>>>
>>> On 29.06.2009, at 14:12, Gary Larizza wrote:
>>>
>>>>
>>>> Hi All,
>>>>
>>>> I'm successfully using pkg_deploy to deploy DMG-encapsulated
>>>> packages
>>>> on Mac Clients.  My question would be - since Puppet is essentially
>>>> used to define a "state" that the computer is in, what would be the
>>>> best way to maintain a "state" after deploying a package?
>>>>
>>>
>>> pkg_deploy is only a convenience/wrapper define around the package-
>>> type.
>>> Since OS X does not really have something like a package-
>>> management, you can
>>> really only install stuff.
>>> The package-type does mark a successfull installation of a package by
>>> creating a
>>> /var/db/.puppet_[pkg|app]dmg_<packagename>
>>>
>>> Thats it. You can remove that file by hand, then puppet thinks it
>>> did not
>>> install the package and reinstalls it again.
>>> Another trick (what we do), is to simply increase the version
>>> number of the
>>> package. One could also call it: rename the package.
>>> (OfficeX-2008.1.dmg ->
>>> OfficeX-2008.2.dmg)
>>>
>>>> For example, if you deployed a package to install Microsoft Office,
>>>> you would probably ensure that the Microsoft Office directory (as
>>>> well
>>>> as the individual .Apps) was Present.  If the directory WASN'T
>>>> present
>>>> (someone deleted it, for example), is there a way to call pkg_deploy
>>>> again to re-deploy the package, or would you have to keep the
>>>> Microsoft Office directory structure on the Puppetmaster server
>>>> (inside your module/files directory, for example) in order for it to
>>>> send the directory structure down to the damaged client?
>>>>
>>> I think that copying recursive directory data in huge amounts will
>>> crash
>>> your puppetmaster, even with only one client. (Hints: xmlrpc and
>>> file-serving)
>>>
>>>> In that vein (and a separate question), how does puppet know that
>>>> pkg_deploy has been run and that the DMG-encapsulated package has
>>>> been
>>>> run/installed?  It doesn't call pkg_deploy on subsequent catalog
>>>> checks by the client - so it's not bringing down the DMG again and
>>>> attempting an install.  Is there some sort of "receipt" that it
>>>> checks
>>>> - or does it actually USE the Receipts directory to monitor
>>>> installation?
>>>>
>>> no, see above.
>>>
>>>> I know I'm trying to use Puppet to maintain staff and lab
>>>> computers -
>>>> which is somewhat unconventional, but it stands up to the
>>>> implementation!  Thanks for all your help and support!
>>>
>>>
>>> uh? Why do you thinkg this is unconventional? Puppet manages
>>> computers. What
>>> these computers are used for is irrelevant :)
>>> We do manage some macs (laptops and workstations) with puppet and
>>> everything
>>> works fine. Package managment does require quite  a lot of time,
>>> but that is
>>> not puppet's fault.
>>>
>>> Have fun,
>>> udo.
>>>
>>> --
>>> :: udo waechter - r...@zoide.net :: N 52º16'30.5" E 8º3'10.1"
>>> :: genuine input for your ears: http://auriculabovinari.de
>>> ::                          your eyes: http://ezag.zoide.net
>>> ::                          your brain: http://zoide.net
>>>
>>>
>>>
>>>
>>>
>>
>>
>>
>> --
>> Nigel Kersten
>> nig...@google.com
>> System Administrator
>> Google, Inc.
>>
>> >
>
>
> >
>



-- 
Nigel Kersten
nig...@google.com
System Administrator
Google, Inc.

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to