So for future reference, it turns out system profiler (GUI or command line)
is somewhat broken in VMWare with OS X Server.
It doesn't report any hardware info at all, and spews to stderr for
SPHardwareDataType and SPMemoryDataType.

There's a simple enough workaround that I'll test before patching upstream.

http://pastie.org/345047

On Mon, Dec 22, 2008 at 11:54 AM, Kyle Crawford <kcrw...@gmail.com> wrote:

> For testing you could edit the facter ruby code to return hardcoded values
> instead of running system profiler. I think it just adds everything to a
> hash then prefixes it with 'sp' if I remember correctly. I've edited ours to
> return other data.
>
> Kyle
>
> On Dec 22, 2008, at 1:02 PM, Carl Caum <carl.c...@gmail.com> wrote:
>
> Ok, yeah.  That's what I was thinking.  I can't test this on physical
> hardware since both our physical XServes are in production.  I'll see if I
> can get a mac mini ordered.
> On Dec 22, 2008, at 11:57 AM, Crawford Kyle wrote:
>
> Is the client running on Mac hardware and not in a VM?  Seems like
> system_profiler, which is used to generate default facts is failing.  Maybe
> it doesn't work because of virtual hardware.
>
>
> On Dec 22, 2008, at 12:28 PM, Carl Caum wrote:
>
> Most plist management can be done with the defaults command.  It means we
> exec out everytime, but we could write a definition/plugin around it.
> I'm having trouble getting puppet to run on OS X.  I installed 0.24.7 on my
> OS X server VM using gems.  After signing the certificate on the
> puppetmaster side, I get this on the client side:
>
> 2008-12-22 11:25:35.796 system_profiler[6552:10b] Exception while calling
> [SPPlatformReporter updateDictionary:]
> *** -[NSCFArray objectAtIndex:]: index (3) beyond bounds (2)
> err: Could not retrieve catalog: undefined method `[]' for nil:NilClass
>
> Any ideas?
> On Dec 19, 2008, at 11:16 PM, Crawford Kyle wrote:
>
>
> On Dec 19, 2008, at 10:48 PM, Nigel Kersten wrote:
>
>
>
> On Fri, Dec 19, 2008 at 7:23 PM, Crawford Kyle < <kcrw...@gmail.com>
> kcrw...@gmail.com> wrote:
>
>>
>> On Dec 19, 2008, at 7:55 PM, Nigel Kersten wrote:
>>
>>
>> On Fri, Dec 19, 2008 at 2:29 PM, Carl Caum < <carl.c...@gmail.com>
>> carl.c...@gmail.com> wrote:
>>
>>>
>>> Does anyone know how to go about joining Mac OS X Leopard to an Active
>>> Directory domain with puppet?
>>> Primarily it needs to be broken down in to doing LDAP authentication
>>> with a few attribute mappings and using kerberos for the password
>>> authentication.
>>
>>
>> You're going to want to push out your DS preferences and then do an exec
>> for the joining of the machine account I imagine, although you could do some
>> of this with templates.....
>>
>> How were you doing this before Puppet?
>>
>> There are no native types now, because those of us doing the Mac stuff
>> with Puppet don't work in AD environments :)
>>
>> I'm more than happy to spend time helping you work through this though
>> Carl. I'm reasonably familiar with AD integration even though we don't do it
>> here.
>>
>> This would be a great recipe to get up on the Puppet wiki.
>>
>>
>> We are in a large AD environment using Puppet. We currently handle the AD
>> joining outside of Puppet with a python script in a launchd job that runs at
>> first boot, though we will probably be moving this to Puppet.
>>
>> The typical steps are:
>> Make sure time server is set and time is set correctly  ( ntpd.conf or
>> exec systemsetup )
>> Activate AD plugin by enabling it in DirectoryService.plist.  ( just a
>> simple key value but I think you need to restart DirectoryService for it to
>> notice )
>> Configure AD plugin using dsconfigad options.  ( this can take a lot of
>> options  all of these just change key values in ActiveDirectory.plist )
>> Join to domain using dsconfigad with a limited AD account and password
>> with permissions to add machines to your OU.  ( this would need to exec the
>> dsconfigad command with username, password, OU, machine join name.
>>  Unfortunately the password is passed to dsconfigad in clear text as a
>> parameter )
>> Set the authentication search path to Custom, and include your AD domain
>> node using dscl.  ( dscl exec )
>>
>> We do manage the time server with Puppet and setting a couple of mapping
>> attributes in the AD plists.
>>
>> I'm happy to help you get this all working in Puppet as well.
>>
>
> oh cool. I didn't realize you were doing AD integration Kyle.
>
> How are you ensuring that AD continues to be configured on the clients?
> Does the python launchd job do all of this? Or are you managing some
> components as Puppet resources?
>
> I've been thinking for a while about how to mange DirectoryService nodes as
> native Puppet types, but there are so many attributes to think about I'm not
> sure it actually simplifies matters all that much...
>
>
> Yes, I've done a lot of AD integration work. The python script I wrote
> tests the configuration and scenarios related to AD Node status and takes
> action if necessary.  The only part in Puppet so far is management of a
> couple AD plist keys.
>
> Agreed, DirectoryService node configuration can get complex.  There may be
> lower hanging fruit like improved plist management that would help in all
> areas including DirectoryService.
>
> Kyle
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> >
>


-- 
Nigel Kersten
Systems Administrator
Tech Lead - MacOps

--~--~---------~--~----~------------~-------~--~----~
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