My simple site.pp below would work. node default { include solaris } class solaris { file { "/etc/motd": source => "puppet:///files-solaris/etc/motd", recurse => true, } } But, if "/motd" is removed, files under /etc would not get updated. node default { include solaris } class solaris { file { "/etc": source => "puppet:///files-solaris/etc", recurse => true, } } err: //solaris/File[/etc]: Failed to generate additional resources using ''eval_generate'': Cannot manage files of type unknown Anchi -- 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+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Try adding ensure => directory To your File[/etc] resource. On Jan 25, 2010, at 4:25 PM, Anchi Zhang <anchi.zhang@gmail.com> wrote:> My simple site.pp below would work. > > node default { include solaris } > class solaris { > file { "/etc/motd": > source => "puppet:///files-solaris/etc/motd", > recurse => true, > } > } > But, if "/motd" is removed, files under /etc would not get updated. > > node default { include solaris } > class solaris { > file { "/etc": > source => "puppet:///files-solaris/etc", > recurse => true, > } > } > err: //solaris/File[/etc]: Failed to generate additional resources > using ''eval_generate'': Cannot manage files of type unknown > Anchi > -- > 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+unsubscribe@googlegroups.com > . > For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en > .-- 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+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
That did not seem to make any difference. I am using version 0.25.2. On Mon, Jan 25, 2010 at 5:54 PM, Carl.caum <carl.caum@gmail.com> wrote:> Try adding > ensure => directory > > To your File[/etc] resource. > > > On Jan 25, 2010, at 4:25 PM, Anchi Zhang <anchi.zhang@gmail.com> wrote: > > My simple site.pp below would work. >> >> node default { include solaris } >> class solaris { >> file { "/etc/motd": >> source => "puppet:///files-solaris/etc/motd", >> recurse => true, >> } >> } >> But, if "/motd" is removed, files under /etc would not get updated. >> >> node default { include solaris } >> class solaris { >> file { "/etc": >> source => "puppet:///files-solaris/etc", >> recurse => true, >> } >> } >> err: //solaris/File[/etc]: Failed to generate additional resources using >> ''eval_generate'': Cannot manage files of type unknown >> Anchi >> -- >> 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+unsubscribe@googlegroups.com<puppet-users%2Bunsubscribe@googlegroups.com> >> . >> For more options, visit this group at >> http://groups.google.com/group/puppet-users?hl=en. >> > > -- > 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+unsubscribe@googlegroups.com<puppet-users%2Bunsubscribe@googlegroups.com> > . > For more options, visit this group at > http://groups.google.com/group/puppet-users?hl=en. > >-- 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+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1> My simple site.pp below would work. > > node default { include solaris } > class solaris { > file { "/etc/motd": > source => "puppet:///files-solaris/etc/motd", > recurse => true, > } > } > But, if "/motd" is removed, files under /etc would not get updated.what do you try to do? which files should be updated? what do you expect to achieve setting the recurse to true?> node default { include solaris } > class solaris { > file { "/etc": > source => "puppet:///files-solaris/etc", > recurse => true, > } > } > err: //solaris/File[/etc]: Failed to generate additional resources using > ''eval_generate'': Cannot manage files of type unknownwhat do you try to achieve with this? what is etc in files-solaris? cheers pete -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iEYEARECAAYFAktfQUoACgkQbwltcAfKi3/JEgCdG9BGxT19eLqJs3ObwJtZ8yyj z2EAoLQ/9PxdksVeKg6WurUazWa83bwh =BCEe -----END PGP SIGNATURE----- -- 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+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
> > > My simple site.pp below would work. > > > > node default { include solaris } > > class solaris { > > file { "/etc/motd": > > source => "puppet:///files-solaris/etc/motd", > > recurse => true, > > } > > } > > But, if "/motd" is removed, files under /etc would not get updated. > > what do you try to do? which files should be updated? what do you expect > to achieve setting the recurse to true?My fileserver.conf contains [files-solaris] path /etc/puppet/manifests/files/solaris allow * and puppetmaster# ls /etc/puppet/manifests/files/solaris/etc motd nsswitch.conf pam.conf resolv.conf I would like to have these files in /etc of all solaris hosts.> > > node default { include solaris } > > class solaris { > > file { "/etc": > > source => "puppet:///files-solaris/etc", > > recurse => true, > > } > > } > > err: //solaris/File[/etc]: Failed to generate additional resources using > > ''eval_generate'': Cannot manage files of type unknown > > what do you try to achieve with this? what is etc in files-solaris? > > cheers pete > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.9 (GNU/Linux) > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org > > iEYEARECAAYFAktfQUoACgkQbwltcAfKi3/JEgCdG9BGxT19eLqJs3ObwJtZ8yyj > z2EAoLQ/9PxdksVeKg6WurUazWa83bwh > =BCEe > -----END PGP SIGNATURE----- > > -- > 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+unsubscribe@googlegroups.com<puppet-users%2Bunsubscribe@googlegroups.com> > . > For more options, visit this group at > http://groups.google.com/group/puppet-users?hl=en. > >-- 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+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1> My fileserver.conf contains > > [files-solaris] > path /etc/puppet/manifests/files/solaris > allow * > > and > > puppetmaster# ls /etc/puppet/manifests/files/solaris/etc > motd nsswitch.conf pam.conf resolv.conf > I would like to have these files in /etc of all solaris hosts.and so if you remove motd in /etc/puppet/manifests/files/solaris/etc you''d like to have /etc/motd removed as well? cheers pete -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iEYEARECAAYFAktfR9cACgkQbwltcAfKi3+vTQCgn7DCElFpRKowMN4MYDZm8UmE ci0An33imxaSVExGhuuf+4+ETzh+cm8y =ZdnA -----END PGP SIGNATURE----- -- 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+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
> > > My fileserver.conf contains > > > > [files-solaris] > > path /etc/puppet/manifests/files/solaris > > allow * > > > > and > > > > puppetmaster# ls /etc/puppet/manifests/files/solaris/etc > > motd nsswitch.conf pam.conf resolv.conf > > I would like to have these files in /etc of all solaris hosts. > > and so if you remove motd in /etc/puppet/manifests/files/solaris/etc > you''d like to have /etc/motd removed as well? >No, no removing. Files are to be copied over if the source''s version is different from that of the target. This is the way I had files in sync in cfengine. -- 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+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Anchi Zhang wrote:>>> My fileserver.conf contains >>> >>> [files-solaris] >>> path /etc/puppet/manifests/files/solaris >>> allow * >>> >>> and >>> >>> puppetmaster# ls /etc/puppet/manifests/files/solaris/etc >>> motd nsswitch.conf pam.conf resolv.conf >>> I would like to have these files in /etc of all solaris hosts. >> and so if you remove motd in /etc/puppet/manifests/files/solaris/etc >> you''d like to have /etc/motd removed as well? >> > No, no removing. Files are to be copied over if the source''s version is > different from that of the target. This is the way I had files in sync in > cfengine. >well, then I don''t understand what you meant with: "But, if "/motd" is removed, files under /etc would not get updated." Something like that will work: node default { include solaris } class solaris { etc_file{[''motd'',''nsswitch.conf'',''pam.conf'',''resolv.conf'']: } define etc_file(){ file { "/etc/${name}": source => "puppet:///files-solaris/etc/${name}", } } } but this approach is not very puppet-like nor will it scale. Remember that with puppet your not keeping a bunch of files in sync, you rather keep the servers in a defined state. cheers pete -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iEYEARECAAYFAktfSp4ACgkQbwltcAfKi3+nFACgim27NhkrXf6GSoa0V+OVzuL8 uzIAn3NMyl6scxbBe8LWQqVfnBmNl6eN =pY4P -----END PGP SIGNATURE----- -- 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+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
>>> My fileserver.conf contains > >>> > >>> [files-solaris] > >>> path /etc/puppet/manifests/files/solaris > >>> allow * > >>> > >>> and > >>> > >>> puppetmaster# ls /etc/puppet/manifests/files/solaris/etc > >>> motd nsswitch.conf pam.conf resolv.conf > >>> I would like to have these files in /etc of all solaris hosts. > >> and so if you remove motd in /etc/puppet/manifests/files/solaris/etc > >> you''d like to have /etc/motd removed as well? > >> > > No, no removing. Files are to be copied over if the source''s version is > > different from that of the target. This is the way I had files in sync > in > > cfengine. > > > > well, then I don''t understand what you meant with: > > "But, if "/motd" is removed, files under /etc would not get updated." >I meant to say that, if a file name is specified such as /etc/motd, the config would work but, if /etc is specified with recurse => true to update all the files in files-solaris/etc, the config would not work.> > Something like that will work: > > node default { include solaris } > class solaris { > etc_file{[''motd'',''nsswitch.conf'',''pam.conf'',''resolv.conf'']: } > > define etc_file(){ > file { "/etc/${name}": > source => "puppet:///files-solaris/etc/${name}", > } > } > } > > but this approach is not very puppet-like nor will it scale.This is what I try to avoid. If a file/director gets added to files-solaris/etc such as inet/ntp.conf as a later time, no puppet config change would be necessary.> Remember > that with puppet your not keeping a bunch of files in sync, you rather > keep the servers in a defined state. > > cheers pete > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.9 (GNU/Linux) > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org > > iEYEARECAAYFAktfSp4ACgkQbwltcAfKi3+nFACgim27NhkrXf6GSoa0V+OVzuL8 > uzIAn3NMyl6scxbBe8LWQqVfnBmNl6eN > =pY4P > -----END PGP SIGNATURE----- > > -- > 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+unsubscribe@googlegroups.com<puppet-users%2Bunsubscribe@googlegroups.com> > . > For more options, visit this group at > http://groups.google.com/group/puppet-users?hl=en. > >-- 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+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
On Tue, Jan 26, 2010 at 2:15 PM, Anchi Zhang <anchi.zhang@gmail.com> wrote:> > > >>> My fileserver.conf contains >> >>> >> >>> [files-solaris] >> >>> path /etc/puppet/manifests/files/solaris >> >>> allow * >> >>> >> >>> and >> >>> >> >>> puppetmaster# ls /etc/puppet/manifests/files/solaris/etc >> >>> motd nsswitch.conf pam.conf resolv.conf >> >>> I would like to have these files in /etc of all solaris hosts. >> >> and so if you remove motd in /etc/puppet/manifests/files/solaris/etc >> >> you''d like to have /etc/motd removed as well? >> >> >> > No, no removing. Files are to be copied over if the source''s version is >> > different from that of the target. This is the way I had files in sync >> in >> > cfengine. >> > >> >> well, then I don''t understand what you meant with: >> >> "But, if "/motd" is removed, files under /etc would not get updated." >> > I meant to say that, if a file name is specified such as /etc/motd, the > config would work but, if /etc is specified with recurse => true to update > all the files in files-solaris/etc, the config would not work. > > >> >> Something like that will work: >> >> node default { include solaris } >> class solaris { >> etc_file{[''motd'',''nsswitch.conf'',''pam.conf'',''resolv.conf'']: } >> >> define etc_file(){ >> file { "/etc/${name}": >> source => "puppet:///files-solaris/etc/${name}", >> } >> } >> } >> >> but this approach is not very puppet-like nor will it scale. > > > This is what I try to avoid. If a file/director gets added to > files-solaris/etc such as inet/ntp.conf as a later time, no puppet config > change would be necessary. >And my config was pretty much a direct copy from James Turnbull''s book which uses /etc/pam.d as an example. -- 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+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
>>> Something like that will work: >>> >>> node default { include solaris } >>> class solaris { >>> etc_file{[''motd'',''nsswitch.conf'',''pam.conf'',''resolv.conf'']: } >>> >>> define etc_file(){ >>> file { "/etc/${name}": >>> source => "puppet:///files-solaris/etc/${name}", >>> } >>> } >>> } >>> >>> but this approach is not very puppet-like nor will it scale. >> >> >> This is what I try to avoid. If a file/director gets added to >> files-solaris/etc such as inet/ntp.conf as a later time, no puppet config >> change would be necessary. >> > > And my config was pretty much a direct copy from James Turnbull''s book which > uses /etc/pam.d as an example.the reason why I say that it doesn''t scale is that for example if the ntp file changes you''d like to to restart the ntp service if the ntp config changes and so on. Anyway the idea is to organize things that belongs together, for example for ntp, the package, the service and the config file in one module, which encapsulates the resource ntp you''d like to manage. Further if you remove something in the source folder it won''t be removed on the server, you have to do that anyway manually. Anyway the following receipe should do what you want: node default { include solaris } class solaris { file { "/etc": source => "puppet:///files-solaris/etc/", ensure => directory, recurse => true, } } however again, I really don''t like the idea of managing /etc in one big piece. But to start and try things out you could do that. If you still encounter the error, please post the output with --trace and let us know about server and client versions. cheers pete -- 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+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
> > the reason why I say that it doesn''t scale is that for example if the ntp >> file changes you''d like to to restart the ntp service if the ntp config >> changes and so on. Anyway the idea is to organize things that belongs >> together, for example for ntp, the package, the service and the config file >> in one module, which encapsulates the resource ntp you''d like to manage. >> Further if you remove something in the source folder it won''t be removed >> on the server, you have to do that anyway manually. >> >> Anyway the following receipe should do what you want: >> >> node default { include solaris } >> class solaris { >> file { "/etc": >> source => "puppet:///files-solaris/etc/", >> ensure => directory, >> recurse => true, >> } >> } >> >> however again, I really don''t like the idea of managing /etc in one big >> piece. But to start and try things out you could do that. >> >> If you still encounter the error, please post the output with --trace and >> let us know about server and client versions. > >Node and class: node default { include solaris } class solaris { file { "/etc": source => "puppet:///files-solaris/etc", recurse => true, ensure => directory, } } Solaris 10 puppet master trace: notice: Starting Puppet server version 0.25.2 info: mount[files-solaris]: allowing * access info: Inserting default ''~ ^/catalog/([^/]+)$''(auth) acl because /etc/puppet/auth.conf doesn''t exist info: Inserting default ''/file''(non-auth) acl because /etc/puppet/auth.conf doesn''t exist info: Inserting default ''/certificate_revocation_list/ca''(auth) acl because /etc/puppet/auth.conf doesn''t exist info: Inserting default ''/report''(auth) acl because /etc/puppet/auth.conf doesn''t exist info: Inserting default ''/certificate/ca''(non-auth) acl because /etc/puppet/auth.conf doesn''t exist info: Inserting default ''/certificate/''(non-auth) acl because /etc/puppet/auth.conf doesn''t exist info: Inserting default ''/certificate_request''(non-auth) acl because /etc/puppet/auth.conf doesn''t exist info: Expiring the node cache of 1km-admin.reinternal.com info: Not using expired node for 1km-admin.reinternal.com from cache; expired at Wed Jan 27 10:35:47 -0600 2010 info: Caching node for 1km-admin.reinternal.com notice: Compiled catalog for 1km-admin.reinternal.com in 0.08 seconds info: mount[files-solaris]: allowing * access Solaris 10 puppet client trace: notice: Starting Puppet client version 0.25.2 info: Caching catalog for 1km-admin.reinternal.com info: Applying configuration version ''1264610148'' /usr/local/lib/ruby/site_ruby/1.8/puppet/file_serving/metadata.rb:68:in `collect'' /usr/local/lib/ruby/site_ruby/1.8/puppet/file_serving/terminus_helper.rb:20:in `path2instances'' /usr/local/lib/ruby/site_ruby/1.8/puppet/util/autoload.rb:85:in `collect'' /usr/local/lib/ruby/site_ruby/1.8/puppet/file_serving/terminus_helper.rb:17:in `each'' /usr/local/lib/ruby/site_ruby/1.8/puppet/file_serving/terminus_helper.rb:17:in `collect'' /usr/local/lib/ruby/site_ruby/1.8/puppet/file_serving/terminus_helper.rb:17:in `path2instances'' /usr/local/lib/ruby/site_ruby/1.8/puppet/indirector/direct_file_server.rb:21:in `search'' /usr/local/lib/ruby/site_ruby/1.8/puppet/indirector/file_metadata/file.rb:20:in `search'' /usr/local/lib/ruby/site_ruby/1.8/puppet/indirector/indirection.rb:240:in `search'' /usr/local/lib/ruby/site_ruby/1.8/puppet/indirector.rb:59:in `search'' /usr/local/lib/ruby/site_ruby/1.8/puppet/type/file.rb:595:in `perform_recursion'' /usr/local/lib/ruby/site_ruby/1.8/puppet/type/file.rb:547:in `recurse_local'' /usr/local/lib/ruby/site_ruby/1.8/puppet/type/file.rb:477:in `recurse'' /usr/local/lib/ruby/site_ruby/1.8/puppet/type/file.rb:385:in `eval_generate'' /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:349:in `send'' /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:349:in `generate_additional_resources'' /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:193:in `eval_generate'' /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:240:in `eval_children_and_apply_resource'' /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:207:in `eval_resource'' /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:296:in `evaluate'' /usr/local/lib/ruby/site_ruby/1.8/puppet/util.rb:403:in `thinmark'' /usr/local/lib/ruby/1.8/benchmark.rb:308:in `realtime'' /usr/local/lib/ruby/site_ruby/1.8/puppet/util.rb:402:in `thinmark'' /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:295:in `evaluate'' /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:289:in `collect'' /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:289:in `evaluate'' /usr/local/lib/ruby/site_ruby/1.8/puppet/resource/catalog.rb:142:in `apply'' /usr/local/lib/ruby/site_ruby/1.8/puppet/configurer.rb:153:in `run'' /usr/local/lib/ruby/site_ruby/1.8/puppet/util.rb:178:in `benchmark'' /usr/local/lib/ruby/1.8/benchmark.rb:308:in `realtime'' /usr/local/lib/ruby/site_ruby/1.8/puppet/util.rb:177:in `benchmark'' /usr/local/lib/ruby/site_ruby/1.8/puppet/configurer.rb:152:in `run'' /usr/local/lib/ruby/site_ruby/1.8/puppet/agent.rb:53:in `run'' /usr/local/lib/ruby/site_ruby/1.8/puppet/agent/locker.rb:21:in `lock'' /usr/local/lib/ruby/site_ruby/1.8/puppet/agent.rb:53:in `run'' /usr/local/lib/ruby/1.8/sync.rb:229:in `synchronize'' /usr/local/lib/ruby/site_ruby/1.8/puppet/agent.rb:53:in `run'' /usr/local/lib/ruby/site_ruby/1.8/puppet/agent.rb:130:in `with_client'' /usr/local/lib/ruby/site_ruby/1.8/puppet/agent.rb:51:in `run'' /usr/local/lib/ruby/site_ruby/1.8/puppet/agent.rb:104:in `start'' /usr/local/lib/ruby/site_ruby/1.8/puppet/external/event-loop/signal-system.rb:97:in `call'' /usr/local/lib/ruby/site_ruby/1.8/puppet/external/event-loop/signal-system.rb:97:in `__signal__'' /usr/local/lib/ruby/site_ruby/1.8/puppet/external/event-loop/signal-system.rb:97:in `each'' /usr/local/lib/ruby/site_ruby/1.8/puppet/external/event-loop/signal-system.rb:97:in `__signal__'' (eval):2:in `signal'' /usr/local/lib/ruby/site_ruby/1.8/puppet/external/event-loop/event-loop.rb:321:in `sound_alarm'' /usr/local/lib/ruby/site_ruby/1.8/puppet/agent.rb:108:in `start'' /usr/local/lib/ruby/site_ruby/1.8/puppet/daemon.rb:127:in `start'' /usr/local/lib/ruby/site_ruby/1.8/puppet/application/puppetd.rb:116:in `main'' /usr/local/lib/ruby/site_ruby/1.8/puppet/application.rb:226:in `send'' /usr/local/lib/ruby/site_ruby/1.8/puppet/application.rb:226:in `run_command'' /usr/local/lib/ruby/site_ruby/1.8/puppet/application.rb:217:in `run'' /usr/local/lib/ruby/site_ruby/1.8/puppet/application.rb:306:in `exit_on_fail'' /usr/local/lib/ruby/site_ruby/1.8/puppet/application.rb:217:in `run'' /usr/local/sbin/puppetd:159 err: //solaris/File[/etc]: Failed to generate additional resources using ''eval_generate'': Cannot manage files of type unknown notice: Finished catalog run in 3.00 seconds -- 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+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
> Node and class: > > node default { include solaris } > class solaris { > file { "/etc": > source => "puppet:///files-solaris/etc", > recurse => true, > ensure => directory, > } > } > Solaris 10 puppet master trace: > > notice: Starting Puppet server version 0.25.2could it be that somewhere in /etc there is a broken symlink? Note: as you are recursively managing /etc as far as I remember every file in /etc is checked (hint: another reason why this approach doesn''t scale)... This smeels like #3001 [1] maybe you could test with 0.25.4rc3? cheers pete [1] http://projects.reductivelabs.com/issues/3001 -- 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+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
On Wed, Jan 27, 2010 at 11:06 AM, Peter Meier <peter.meier@immerda.ch>wrote:> Node and class: >> >> node default { include solaris } >> class solaris { >> file { "/etc": >> source => "puppet:///files-solaris/etc", >> recurse => true, >> ensure => directory, >> } >> } >> Solaris 10 puppet master trace: >> >> notice: Starting Puppet server version 0.25.2 >> > > could it be that somewhere in /etc there is a broken symlink? Note: as you > are recursively managing /etc as far as I remember every file in /etc is > checked (hint: another reason why this approach doesn''t scale)... > > This smeels like #3001 [1] maybe you could test with 0.25.4rc3? > > cheers pete > > [1] http://projects.reductivelabs.com/issues/3001The following test worked and may have proved your theory. Thank you very much for the help. node default { include solaris } class solaris { file { "/etc/inet": source => "puppet:///files-solaris/etc/inet", recurse => true, } } -- 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+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.