Issue #4835 has been updated by Nigel Kersten.

Status changed from Accepted to Code Insufficient

Stefan brought up some excellent arguments against sorting in property.rb, the 
code is insufficient as stands and requires a larger refactor of the 
directoryservices nameservice provider so that the members property can be 
migrated to Property::OrderedList
----------------------------------------
Bug #4835: OS X group resource triggers spurious notice of a change
https://projects.puppetlabs.com/issues/4835

Author: Clay Caviness
Status: Code Insufficient
Priority: Normal
Assignee: Nigel Kersten
Category: 
Target version: 
Affected Puppet version: 2.6.1
Keywords: 
Branch: 


If I create a simple group resource on OS X:
<pre>
group { "admin": members => ["root", "clay", "localadmin"] }
</pre>

and apply it multiple times, each time it triggers a "notice" that the 
membership has changed, even though the group provider did not make any changes.

<pre>
# puppet -d
group { "admin": members => ["root", "clay", "localadmin"] }
info: Loading facts in antivirus
info: Loading facts in cached_ldap_data
info: Loading facts in certname
info: Loading facts in corp_in_searchpath
info: Loading facts in debconf
info: Loading facts in en0_macaddress
info: Loading facts in encryption
info: Loading facts in environment
info: Loading facts in fstab_uuid
info: Loading facts in goobuntu_sshconfig_version
info: Loading facts in google_distro
info: Loading facts in hardware
info: Loading facts in in_china
info: Loading facts in installing
info: Loading facts in lobby
info: Loading facts in locale
info: Loading facts in macadmin_hash_path
info: Loading facts in machine_customizations
info: Loading facts in machine_in_ldap
info: Loading facts in machine_type
info: Loading facts in macos_info
info: Loading facts in oel_info
info: Loading facts in ops_owner
info: Loading facts in primary_user
info: Loading facts in region
info: Loading facts in remote_access
info: Loading facts in servicedb
info: Loading facts in sh_node
info: Loading facts in solaris_info
info: Loading facts in ssh_disabled
info: Loading facts in zone
debug: Puppet::Type::Group::ProviderPw: file /usr/sbin/pw does not exist
debug: Puppet::Type::Group::ProviderGroupadd: file groupdel does not exist
debug: Puppet::Type::Group::ProviderLdap: true value when expecting false
debug: Creating default schedules
debug: Failed to load library 'shadow' for feature 'libshadow'
debug: Puppet::Type::User::ProviderUseradd: file userdel does not exist
debug: Puppet::Type::User::ProviderPw: file pw does not exist
debug: Puppet::Type::User::ProviderUser_role_add: file roledel does not exist
debug: Puppet::Type::User::ProviderLdap: true value when expecting false
debug: Puppet::Type::User::ProviderDirectoryservice: Executing '/usr/bin/dscl 
-plist . -list /Users'
debug: Puppet::Type::User::ProviderDirectoryservice: Executing '/usr/bin/dscl 
-plist . -read /Users/root'
debug: Failed to load library 'selinux' for feature 'selinux'
debug: Puppet::Type::File::ProviderMicrosoft_windows: feature microsoft_windows 
is missing
debug: /File[/etc/puppet/ssl]: Autorequiring File[/etc/puppet]
debug: /File[/var/puppet/state/classes.txt]: Autorequiring 
File[/var/puppet/state]
debug: /File[/var/puppet/state]: Autorequiring File[/var/puppet]
debug: /File[/etc/puppet/ssl/certs]: Autorequiring File[/etc/puppet/ssl]
debug: /File[/var/puppet/facts]: Autorequiring File[/var/puppet]
debug: /File[/etc/puppet/ssl/certs/ca.pem]: Autorequiring 
File[/etc/puppet/ssl/certs]
debug: /File[/etc/puppet/ssl/crl.pem]: Autorequiring File[/etc/puppet/ssl]
debug: /File[/etc/puppet/ssl/public_keys]: Autorequiring File[/etc/puppet/ssl]
debug: 
/File[/etc/puppet/ssl/public_keys/c37b1476-214e-4897-824e-2dcd24c60543.pem]: 
Autorequiring File[/etc/puppet/ssl/public_keys]
debug: /File[/var/puppet/client_yaml]: Autorequiring File[/var/puppet]
debug: /File[/var/puppet/lib]: Autorequiring File[/var/puppet]
debug: /File[/var/puppet/run]: Autorequiring File[/var/puppet]
debug: /File[/etc/puppet/ssl/private_keys]: Autorequiring File[/etc/puppet/ssl]
debug: /File[/etc/puppet/ssl/certificate_requests]: Autorequiring 
File[/etc/puppet/ssl]
debug: /File[/var/puppet/client_data]: Autorequiring File[/var/puppet]
debug: /File[/var/puppet/log]: Autorequiring File[/var/puppet]
debug: /File[/var/puppet/state/state.yaml]: Autorequiring 
File[/var/puppet/state]
debug: 
/File[/etc/puppet/ssl/private_keys/c37b1476-214e-4897-824e-2dcd24c60543.pem]: 
Autorequiring File[/etc/puppet/ssl/private_keys]
debug: /File[/var/puppet/state/graphs]: Autorequiring File[/var/puppet/state]
debug: /File[/etc/puppet/ssl/certs/c37b1476-214e-4897-824e-2dcd24c60543.pem]: 
Autorequiring File[/etc/puppet/ssl/certs]
debug: /File[/var/puppet/clientbucket]: Autorequiring File[/var/puppet]
debug: /File[/etc/puppet/ssl/private]: Autorequiring File[/etc/puppet/ssl]
debug: Finishing transaction 2164043380
debug: Loaded state in 1.40 seconds
info: Applying configuration version '1285271264'
debug: Puppet::Type::Group::ProviderDirectoryservice: Executing '/usr/bin/dscl 
-plist . -list /Groups'
debug: Puppet::Type::Group::ProviderDirectoryservice: Executing '/usr/bin/dscl 
-plist . -read /Groups/admin'
notice: /Stage[main]//Group[admin]/members: members changed 
'clay,root,localadmin' to 'root,clay,localadmin'
debug: Finishing transaction 2189862280
debug: Storing state
debug: Stored state in 6.98 seconds
</pre>

I'm running puppet 2.6.1 on OS X 10.6.4 with the stock ruby (1.8.7) installed.


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