Issue #4025 has been updated by Nigel Kersten.

The situation isn't that clear though Paul.

Apple weren't shipping binary plists or converting xml plists to binary during 
the 0.25.x lifecycle, they only started doing this after 2.6.0 was released.

This is a bug that pretty much breaks the Service provider on OS X. We're not 
going to fix this in 2.6.x at all? 
----------------------------------------
Bug #4025: "ralsh service" fails with "Unimplemented element" when using 
launchd provider if certain plists are binary
http://projects.puppetlabs.com/issues/4025

Author: Clay Caviness
Status: Ready for Testing
Priority: Normal
Assignee: Nigel Kersten
Category: OSX
Target version: queued
Affected version: 0.25.5
Keywords: 
Branch: 


On 10.6.3, all system-level LaunchDaemons are shipped as text files (xml1 
format). However, as they are updated, they may be converted to binary (binary1 
format).

I suspect this is because ralsh is using Plist::parse_xml, which can't handle 
binary plists.

:) fox:~ crc$ file {/System,}/Library/Launch{Daemons,Agents}/*.plist | grep 
binary
/System/Library/LaunchDaemons/com.apple.syslogd.plist:                          
Apple binary property list
:( fox:~ crc$ sudo ralsh --debug --trace service com.openssh.sshd
debug: Puppet::Type::Service::ProviderDebian: file /usr/sbin/update-rc.d does 
not exist
debug: Puppet::Type::Service::ProviderRunit: file /usr/bin/sv does not exist
debug: Puppet::Type::Service::ProviderGentoo: file /sbin/rc-update does not 
exist
debug: Puppet::Type::Service::ProviderDaemontools: file /usr/bin/svc does not 
exist
debug: Puppet::Type::Service::ProviderRedhat: file /sbin/chkconfig does not 
exist
debug: Puppet::Type::Service::ProviderDebian: file /usr/sbin/update-rc.d does 
not exist
debug: Puppet::Type::Service::ProviderRunit: file /usr/bin/sv does not exist
debug: Puppet::Type::Service::ProviderGentoo: file /sbin/rc-update does not 
exist
debug: Puppet::Type::Service::ProviderDaemontools: file /usr/bin/svc does not 
exist
debug: Puppet::Type::Service::ProviderRedhat: file /sbin/chkconfig does not 
exist
/Library/Ruby/Site/1.8/facter/util/plist/parser.rb:104:in `parse'
/Library/Ruby/Site/1.8/facter/util/plist/parser.rb:28:in `parse_xml'
/Library/Ruby/Site/1.8/puppet/provider/service/launchd.rb:65:in `jobsearch'
/Library/Ruby/Site/1.8/puppet/provider/service/launchd.rb:61:in `each'
/Library/Ruby/Site/1.8/puppet/provider/service/launchd.rb:61:in `jobsearch'
/Library/Ruby/Site/1.8/puppet/provider/service/launchd.rb:59:in `each'
/Library/Ruby/Site/1.8/puppet/provider/service/launchd.rb:59:in `jobsearch'
/Library/Ruby/Site/1.8/puppet/provider/service/launchd.rb:87:in `instances'
/Library/Ruby/Site/1.8/puppet/type.rb:1006:in `instances'
/Library/Ruby/Site/1.8/puppet/type.rb:1005:in `collect'
/Library/Ruby/Site/1.8/puppet/type.rb:1005:in `instances'
/Library/Ruby/Site/1.8/puppet/application/ralsh.rb:93:in `main'
/Library/Ruby/Site/1.8/puppet/application.rb:226:in `send'
/Library/Ruby/Site/1.8/puppet/application.rb:226:in `run_command'
/Library/Ruby/Site/1.8/puppet/application.rb:217:in `run'
/Library/Ruby/Site/1.8/puppet/application.rb:306:in `exit_on_fail'
/Library/Ruby/Site/1.8/puppet/application.rb:217:in `run'
/usr/bin/ralsh:89
Could not run: Unimplemented element
:( fox:~ crc$ sudo plutil -convert xml1 
/System/Library/LaunchDaemons/com.apple.syslogd.plist 
:) fox:~ crc$ sudo ralsh -d service com.openssh.sshd
debug: Puppet::Type::Service::ProviderDebian: file /usr/sbin/update-rc.d does 
not exist
debug: Puppet::Type::Service::ProviderRunit: file /usr/bin/sv does not exist
debug: Puppet::Type::Service::ProviderGentoo: file /sbin/rc-update does not 
exist
debug: Puppet::Type::Service::ProviderDaemontools: file /usr/bin/svc does not 
exist
debug: Puppet::Type::Service::ProviderRedhat: file /sbin/chkconfig does not 
exist
debug: Puppet::Type::Service::ProviderDebian: file /usr/sbin/update-rc.d does 
not exist
debug: Puppet::Type::Service::ProviderRunit: file /usr/bin/sv does not exist
debug: Puppet::Type::Service::ProviderGentoo: file /sbin/rc-update does not 
exist
debug: Puppet::Type::Service::ProviderDaemontools: file /usr/bin/svc does not 
exist
debug: Puppet::Type::Service::ProviderRedhat: file /sbin/chkconfig does not 
exist
debug: Service path /etc/init.d does not exist
debug: Puppet::Type::Service::ProviderLaunchd: Executing '/bin/launchctl list'
debug: Puppet::Type::Service::ProviderLaunchd: Executing '/bin/launchctl list'
service { 'com.openssh.sshd':
    enable => 'true',
    ensure => 'running'
}



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