Create a list here of recipes you'd like to see, and those Puppeteers who have time will try to come by and create them.
Puppet
- An 'editfile' type. I don't know why editing files isn't built into Puppet, but it's an obvious short-coming, and everyone seems to be asking for it. There's some scattered modules on the net which attempt to solve this, but they're poorly documented, have dependencies, and are not built-in. An 'editfile' "Type" could be very elegant and probably be put into a single *.rb file under $RUBY_LIB_DIR/site_ruby/1.8/puppet/type/editfile.rb. The 'editfile' type _should_ extend the 'file' type, so configs can remain compact. An example usage would be:
editfile { "cron.allow": path => "/etc/cron.d/cron.allow", owner => root, group => sys, mode => 600, append_if_no_such_line => ["john_smith", "root", "sys"], remove_line_if_matches => "evil_user", comment_out_if_matches => ".*daemon", }
Would this not be the most elegant solution!?
- some kind of ssh authorized_keys management
See this for a working solution. - windowsrefund
- bind zone files
- /etc/group membership management (different groups have different users, in no particular order) (This is already possible -- you use the groups attribute on individual users. --luke)
- automate the provisioning of Solaris Zones including the installation/configuration of puppet so that additional software can be automatically installed within that zone.
- automate the installation of firefox extensions - unfortunately, most distributions don't package them.
- looks like xpi files are just zipped archives that can be extracted into either a user's local directory or a system-wide directory. In Ubuntu 7.10, that appears to be /usr/lib/firefox/extensions. Candidate for facter?
- I don't think it is that easy. Firefox extensions have also to be registered into extensions.ini and extensions.rdf files with their appropriate manifests, so that Firefox knows where to look for what.
- Debian has created some infrastructure for registering globally installed extensions. Rather, probably worth another package provider.
- I don't think it is that easy. Firefox extensions have also to be registered into extensions.ini and extensions.rdf files with their appropriate manifests, so that Firefox knows where to look for what.
- looks like xpi files are just zipped archives that can be extracted into either a user's local directory or a system-wide directory. In Ubuntu 7.10, that appears to be /usr/lib/firefox/extensions. Candidate for facter?
- Management for quota.
- Initially enabling quota for partitions
Facter
- firewall facts, e.g. network interfaces, ipaddresses, netmasks, default gateway, routes,
- better freebsd facts. by default only the following are available on freebsd:
domain facterversion fqdn hardwaremodel hostname ipaddress kernel kernelrelease operatingsystem operatingsystemrelease ps puppetversion rubysitedir rubyversion sshdsakey sshrsakey
Simple Complete Configuration
The Current Complete Configuration is very complete, but very complex. And as far as I can tell, very Debian dependent. It would be great if there was a somewhat more simple complete configuration example to see how things fit together for beginners like me.
Ideally there would be a very simple complete configuration that does more than the current tutorials show (ie do something useful like set up users or some service and not just show how to create a file). Then a slightly more complex example that shows how to set up mysql or apache.
By Complete Configuraiton, I would be intersted in seeing best practices of how to organize the /etc/puppet tree with modules and classes but not so complex that I can't get it to work without understanding everything in puppet (like the current Complete Configuration uses plugins which is very advanced and doesn't seem to work out of the box on my Fedora environment)