Hello, I appreciate that this topic may have come up before but a quick scan of the archives did not reveal anything. If someone could kindly point me to an archive entry that would also be great. I want to use Puppet fileserver in conjunction with a svn repo, this was I can commit files to svn and have the fileserver propagate them to the various machines, I believe this is a common way of using Puppet. My question is, how do I organise the repo? By host? Or by common configuration files? Eg. sudoers will be mostly the same but with some exceptions. Or perhaps by function? Any hints on what people find works best for them will be appreciated. Then I can take that and make my own decisions. Many thanks, Fred.
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On Friday 22 June 2007, Fred Clausen wrote:> Hello, > > I appreciate that this topic may have come up before but a quick scan of > the archives did not reveal anything. If someone could kindly point me > to an archive entry that would also be great. > > I want to use Puppet fileserver in conjunction with a svn repo, this was > I can commit files to svn and have the fileserver propagate them to the > various machines, I believe this is a common way of using Puppet. > > My question is, how do I organise the repo? By host? Or by common > configuration files? Eg. sudoers will be mostly the same but with some > exceptions. Or perhaps by function? > > Any hints on what people find works best for them will be appreciated. > Then I can take that and make my own decisions.The relevant documents on the Wiki are PuppetBestPractises and PuppetModules. For a practical example, I have my puppet SVN publically available at http://club.black.co.at:82/svn/manifests/trunk/ Please be aware though, that I''m currently reorganising it to use modules and the code is not in it''s best shape currently. Regards, David - -- - - hallo... wie gehts heute? - - *hust* gut *rotz* *keuch* - - gott sei dank kommunizieren wir über ein septisches medium ;) -- Matthias Leeb, Uni f. angewandte Kunst, 2005-02-15 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) iD8DBQFGe9ia/Pp1N6Uzh0URAmZGAJ0dF3FVRRE40taX2NjyOAcoidg8CACdFVrE fI2z8oMtD4Bct334h219b3I=Mrgu -----END PGP SIGNATURE-----
Hello, David Schmitt wrote:> The relevant documents on the Wiki are PuppetBestPractises and PuppetModules. > > For a practical example, I have my puppet SVN publically available at > http://club.black.co.at:82/svn/manifests/trunk/ > > Please be aware though, that I''m currently reorganising it to use modules and > the code is not in it''s best shape currently.Ah, thanks for that. I will read those documents and plan accordingly. Regards, Fred.
> The relevant documents on the Wiki are PuppetBestPractises and PuppetModules. > > For a practical example, I have my puppet SVN publically available at > http://club.black.co.at:82/svn/manifests/trunk/Wow, thanks for sharing this. I was curious about how others were managing their configurations since I''m still pretty new to puppet and my manifest is pretty pathetic :-) Seeing examples to wrap my brain around the possibilities has been a big help. Cheers, Ryan
On Jun 22, 2007, at 10:19 AM, Fred Clausen wrote:> Ah, thanks for that. I will read those documents and plan accordingly. > > Regards, > > Fred.You might also want to look at Luke''s SVN modules, which are here: < https://reductivelabs.com/bzr/modules/subversion/ >
On Jun 22, 2007, at 9:04 AM, Fred Clausen wrote:> Hello, > > I appreciate that this topic may have come up before but a quick > scan of > the archives did not reveal anything. If someone could kindly point me > to an archive entry that would also be great. > > I want to use Puppet fileserver in conjunction with a svn repo, > this was > I can commit files to svn and have the fileserver propagate them to > the > various machines, I believe this is a common way of using Puppet. > > My question is, how do I organise the repo? By host? Or by common > configuration files? Eg. sudoers will be mostly the same but with some > exceptions. Or perhaps by function?Because this didn''t seem to be explicitly covered... I *highly* recommend organizing your repo by service or function, never by host or file paths. For instance, use "sudo/sudoers" in your file repo instead of "etc/sudoers". This is better for two primary reasons: First, you might someday have to support platforms that don''t use the same file locations (e.g., Solaris often sticks the sudoers file in /opt/local or /usr/local), and second, it''s *much* easier to find the file you''re looking for. When you think of the file you want, you usually think of the service, not the path. Use your tools to translate the service to the appropriate path; that''s what they''re for. Of course, modules basically enforce this kind of separation, but it can still be tempting to use file paths instead of symbolic names, and I really recommend against it. -- You''ve achieved success in your field when you don''t know whether what you''re doing is work or play. -- Warren Beatty --------------------------------------------------------------------- Luke Kanies | http://reductivelabs.com | http://madstop.com
Hi, Luke Kanies wrote:> On Jun 22, 2007, at 9:04 AM, Fred Clausen wrote: > >> Hello, >> >> I appreciate that this topic may have come up before but a quick >> scan of >> the archives did not reveal anything. If someone could kindly point me >> to an archive entry that would also be great. >> >> I want to use Puppet fileserver in conjunction with a svn repo, >> this was >> I can commit files to svn and have the fileserver propagate them to >> the >> various machines, I believe this is a common way of using Puppet. >> >> My question is, how do I organise the repo? By host? Or by common >> configuration files? Eg. sudoers will be mostly the same but with some >> exceptions. Or perhaps by function? > > Because this didn''t seem to be explicitly covered... > > I *highly* recommend organizing your repo by service or function, > never by host or file paths. For instance, use "sudo/sudoers" in > your file repo instead of "etc/sudoers". This is better for two > primary reasons: First, you might someday have to support platforms > that don''t use the same file locations (e.g., Solaris often sticks > the sudoers file in /opt/local or /usr/local), and second, it''s > *much* easier to find the file you''re looking for. When you think of > the file you want, you usually think of the service, not the path. > > Use your tools to translate the service to the appropriate path; > that''s what they''re for. > > Of course, modules basically enforce this kind of separation, but it > can still be tempting to use file paths instead of symbolic names, > and I really recommend against it.Yes, this does make good sense, I am still testing things but it having Puppet figure out where exactly on each OS a config file lives is precisely one of the reasons I want to deploy puppet for our machines. Also, the whole module concept and SVN tagging is great for testing. Cheers, Fred.