Wednesday, 2008-05-07

[2008/05/07 00:03:40] <ashp> someone kill me
[2008/05/07 00:03:47] <ashp> the dev manager wants me to install gnome on his new server
[2008/05/07 00:04:38] <Demosthenex> thom: other than the release cycle, is there any real difference? i know it uses ubuntu repos.
[2008/05/07 00:05:08] <duritong> ashp: he wants an enterprise environment? :P
[2008/05/07 00:06:02] <ashp> as he cannot 'understand' the text
[2008/05/07 00:07:04] @ johnf joined channel #puppet
[2008/05/07 00:08:09] <ashp> I want to kill him a little, I don't even know if there's a meta rhel package for this
[2008/05/07 00:08:14] <duritong> you know that some standards to call something enterprise requires an X environment and config-guis ;)
[2008/05/07 00:08:30] <ashp> they are buying in this 'enterprise (HAHA) service bus' called mule
[2008/05/07 00:08:44] <duritong> therefor they need it
[2008/05/07 00:08:58] <ashp> it has a fully text based mode of course
[2008/05/07 00:08:59] <ashp> but he can't work that
[2008/05/07 00:09:32] <duritong> fi you're enterprise you don't want to spend your time in a shell :P
[2008/05/07 00:09:38] <duritong> apropos:
[2008/05/07 00:09:44] * duritong announces serchilo support for puppet-page: http://wiki.serchilo.net/Puppet_Reductive_Labs :)
[2008/05/07 00:10:27] @ Quit: CB2045: "http://www.mibbit.com ajax IRC Client"
[2008/05/07 00:11:32] @ shenson is now known as shenson_not_here
[2008/05/07 00:12:39] <ashp> whenever people tell me text is too hard
[2008/05/07 00:12:52] <ashp> i picture them as ludicrous cavemen throwbacks who communicate only in hand signals and drawings
[2008/05/07 00:13:18] @ clintc_ joined channel #puppet
[2008/05/07 00:13:26] @ Quit: a-priori:
[2008/05/07 00:15:28] @ shenson_not_here is now known as shenson
[2008/05/07 00:17:15] <stick> ugh, mule
[2008/05/07 00:17:19] * stick shudders
[2008/05/07 00:19:00] @ brscott joined channel #puppet
[2008/05/07 00:19:04] @ brscott left channel #puppet ()
[2008/05/07 00:22:08] @ jvanzyl joined channel #puppet
[2008/05/07 00:22:46] @ Quit: jvanzyl: Remote closed the connection
[2008/05/07 00:23:25] @ jvanzyl joined channel #puppet
[2008/05/07 00:25:13] <ashp> stick: wait wait
[2008/05/07 00:25:16] <ashp> what's so wrong with mule?
[2008/05/07 00:25:17] @ kposs joined channel #puppet
[2008/05/07 00:25:25] <ashp> I know _nothing_ about it or what an ESB is, to be honest
[2008/05/07 00:25:30] <ashp> but it's supposed to be our big saviour
[2008/05/07 00:26:21] <stick> we've had it here for a while and my app guys haven't been really happy with it, they are looking at replacing it with EJB IIRC
[2008/05/07 00:27:08] <ashp> the idea (apparently) is this will be used to bootstrap up a replacement to the current 500 billion scripts to shove information between the 50 databases or so they seem to have
[2008/05/07 00:27:10] <stick> my complaints with it are that it's an unpackaged java mess that spews worthless logs constantly, but that may be our implementation of it
[2008/05/07 00:27:31] <ashp> then again he's looking at netscape identity manager or something so he LOVES commerical software
[2008/05/07 00:27:41] <stick> *nod*, that's what it's designed to do, act as a transport bus for 'stuff'
[2008/05/07 00:28:06] <ashp> to be fair compared to our current non-existant transportation management, it can't be worse
[2008/05/07 00:28:16] <ashp> i've seen some of those scripts.. :)
[2008/05/07 00:29:30] @ chillitom joined channel #puppet
[2008/05/07 00:30:52] @ Quit: johnf: Network is unreachable
[2008/05/07 00:31:16] <greenmoss> so has anyone found any workarounds or solutions for #1199?
[2008/05/07 00:31:20] <gepetto> greenmoss: #1199 is http://reductivelabs.com/trac/puppet/ticket/1199 "puppetd dies after connection to puppetmaster fails"
[2008/05/07 00:31:36] @ johnf joined channel #puppet
[2008/05/07 00:31:55] <greenmoss> I'm getting it too... but only on some machines
[2008/05/07 00:32:31] <Volcane> yip, mine does it too
[2008/05/07 00:32:51] <duritong> greenmos Volcane: no not really
[2008/05/07 00:33:13] <greenmoss> the only workaround I can think of is to periodically kill puppetmaster to prevent if from dying and taking out the clients
[2008/05/07 00:33:29] <greenmoss> s/if/it/
[2008/05/07 00:34:05] <Volcane> mine never dies
[2008/05/07 00:34:13] <Volcane> (master never dies)
[2008/05/07 00:34:18] <Volcane> but my machines are spread all over the world
[2008/05/07 00:34:23] <Volcane> so connectivity is dodgy at times
[2008/05/07 00:34:25] <Volcane> = puppetd dies
[2008/05/07 00:34:38] <greenmoss> the master doesn't die, but it stops responding to the clients
[2008/05/07 00:34:44] <greenmoss> then some of the clients die
[2008/05/07 00:35:04] <greenmoss> both problems started happening after I upgraded to 0.24.4
[2008/05/07 00:35:54] <greenmoss> Is there perhaps data I can provide to help diagnose the issue?
[2008/05/07 00:36:50] <Demosthenex> ashp: MQ's popular on the commercial side
[2008/05/07 00:37:00] <fsweetser> I started seeing that behavior in 0.23, and I suspect it happened after I started using storeconfigs
[2008/05/07 00:39:02] <hacim> greenmoss: are you using webrick?
[2008/05/07 00:39:17] <greenmoss> hacim: yes, I think so
[2008/05/07 00:40:14] <hacim> greenmoss: http://reductivelabs.com/trac/puppet/wiki/UsingMongrel
[2008/05/07 00:40:46] <hacim> greenmoss: i had that problem because webrick couldn't handle things, switching to mongrel was the solution
[2008/05/07 00:41:09] <greenmoss> hacim: thanks, I'll give it a try
[2008/05/07 00:41:11] <Demosthenex> ashp: and after reading the runnels proposal, i'd read into OpenAMQ and similar products
[2008/05/07 00:41:25] @ shenson is now known as shenson_not_here
[2008/05/07 00:41:29] <fsweetser> hacim: how many clients did you have when you started seeing the problem?
[2008/05/07 00:41:38] <fsweetser> I'm having it with only a dozen clients connecting
[2008/05/07 00:43:06] <hacim> fsweetser: about 25, but i know it can depend a lot on what you are doing... for example if you are serving a lot of files out via puppet...
[2008/05/07 00:43:34] <fsweetser> I'm not doing a huge number, but I do have some
[2008/05/07 00:44:03] <fsweetser> guess I've got some real motivation to set up mongrel now =)
[2008/05/07 00:45:21] <hX8> 14:34 < greenmoss> the master doesn't die, but it stops responding
[2008/05/07 00:45:22] <hX8> 14:34 < greenmoss> the master doesn't die, but it stops responding
[2008/05/07 00:45:22] <hX8> 14:34 < greenmoss> the master doesn't die, but it stops responding
[2008/05/07 00:45:56] <hX8> oops sorry guys wrong window; bad pastebuffer :(
[2008/05/07 00:53:27] <hacim> fsweetser: its surprisingly easy
[2008/05/07 00:53:49] @ Quit: tim|mb: "This computer has gone to sleep"
[2008/05/07 01:03:12] @ Quit: johnf: "Leaving."
[2008/05/07 01:16:37] @ Gwayne joined channel #puppet
[2008/05/07 01:22:02] @ Quit: markl__: "Lost terminal"
[2008/05/07 01:31:34] @ oxtail joined channel #puppet
[2008/05/07 01:33:47] <fsweetser> looks like I'd have to start mucking about with startup scripts...
[2008/05/07 01:36:43] @ shenson_not_here is now known as shenson
[2008/05/07 01:42:16] @ kolla_ joined channel #puppet
[2008/05/07 01:44:13] @ Quit: kposs: Read error: 110 (Connection timed out)
[2008/05/07 01:46:41] @ Quit: oxtail: "Bye for now..."
[2008/05/07 01:46:42] <flakrat> is there a way for puppet to ensure that a certain file exists in each users (defined in virt_all_users) home directory, without creating a file definition for each user?
[2008/05/07 01:54:04] @ Quit: zobbo: Read error: 110 (Connection timed out)
[2008/05/07 01:58:45] @ a-priori joined channel #puppet
[2008/05/07 02:00:20] @ andyhold joined channel #puppet
[2008/05/07 02:01:24] <flakrat> essentially, I want to make sure that every user has a specific launcher in their ~<USER>/Desktop/ directory
[2008/05/07 02:02:18] <ashp> i wonder if file { "/home/*/Desktop/blah": would work
[2008/05/07 02:02:20] <ashp> probably not :)
[2008/05/07 02:03:23] <ashp> Has anyone paid attention to the new cfengine 3 'promises' stuff?
[2008/05/07 02:03:55] <flakrat> not I, do you have a link?
[2008/05/07 02:04:43] <ashp> http://www.cfengine.org/cfengine3.php?page=content/cf3.txt i guess is a good start
[2008/05/07 02:05:32] <ashp> i don't really see what's so new and interesting myself
[2008/05/07 02:06:29] @ jvanzyl_ joined channel #puppet
[2008/05/07 02:06:41] @ Quit: kolla: Remote closed the connection
[2008/05/07 02:06:48] @ Quit: kolla_: Remote closed the connection
[2008/05/07 02:07:07] @ kolla joined channel #puppet
[2008/05/07 02:07:24] @ kposs joined channel #puppet
[2008/05/07 02:09:26] <flakrat> I evaluated cfengine but decided puppet was more my style, plus it gives me an excuse to get familiar with ruby
[2008/05/07 02:10:08] @ shake-n-bake joined channel #puppet
[2008/05/07 02:10:50] @ Quit: a-priori:
[2008/05/07 02:15:31] @ Quit: jvanzyl: Read error: 104 (Connection reset by peer)
[2008/05/07 02:16:52] @ plathrop joined channel #puppet
[2008/05/07 02:19:09] <flakrat> I wonder if I could embed a file { ...... } line in each users definition? A long handed approach at first, but new users I'd only have to copy my user template
[2008/05/07 02:25:08] <ashp> the new opensolaris iso is kind of nice
[2008/05/07 02:25:09] @ Quit: jvanzyl_: Read error: 104 (Connection reset by peer)
[2008/05/07 02:25:34] @ jvanzyl joined channel #puppet
[2008/05/07 02:25:35] <ashp> I would probably just have a dist/user/ thing
[2008/05/07 02:25:45] <ashp> and recursively copy that to every user with a script
[2008/05/07 02:25:46] <ashp> but then i'm lazy
[2008/05/07 02:26:46] <ashp> you know you can define a basedir that useradd users to define a new user right? (or is this to add stuff to existing users?)
[2008/05/07 02:26:47] <flakrat> yeah, that's the way I'm leaning, but if I can do it using file, then I can easilly make updates to the launcher and have it propagate to all
[2008/05/07 02:27:09] <flakrat> existing users
[2008/05/07 02:27:34] <flakrat> I can put it in /etc/skel and have new users pick it up, but I'd really like to have puppet manage it
[2008/05/07 02:28:03] @ Quit: roald: Remote closed the connection
[2008/05/07 02:28:36] <flakrat> I already have puppet managing a similar launcher that appears on all of the "Start" menus by having it placed in /usr/share/applications/, wish there was a place like that on redhat for all users desktops :-)
[2008/05/07 02:35:54] <Volcane> flakrat: http://www.redhat.com/magazine/008jun05/features/sabayon/
[2008/05/07 02:36:26] <flakrat> Volcane, cool, I'll take a look at this
[2008/05/07 02:36:46] <Volcane> you can create user profiles and assign them to users, those profiles have icons and stuff on all desktops etc
[2008/05/07 02:36:55] <Volcane> the kind of thing enterprises could use to make locked down desktops and such
[2008/05/07 02:37:11] <flakrat> any idea if this supports RHEL4?
[2008/05/07 02:37:25] <Volcane> donno, but its a gnome thing
[2008/05/07 02:37:33] <flakrat> cool, thanks
[2008/05/07 02:48:31] @ folken_ joined channel #puppet
[2008/05/07 02:50:16] @ Quit: folken_: Remote closed the connection
[2008/05/07 02:52:29] @ a-priori joined channel #puppet
[2008/05/07 02:55:37] @ markl__ joined channel #puppet
[2008/05/07 03:04:07] @ Quit: fbe: Read error: 110 (Connection timed out)
[2008/05/07 03:08:23] @ Quit: DerekW: "Leaving"
[2008/05/07 03:17:30] @ greenmoss left channel #puppet ()
[2008/05/07 03:17:55] @ dysinger joined channel #puppet
[2008/05/07 03:28:56] @ Quit: ianm: Read error: 113 (No route to host)
[2008/05/07 03:32:40] @ londo__ is now known as londo_
[2008/05/07 03:35:05] @ Quit: jvanzyl: Read error: 113 (No route to host)
[2008/05/07 03:42:58] @ Quit: a-priori: Read error: 110 (Connection timed out)
[2008/05/07 03:43:23] <gepetto> ::puppet:: Using Multiple Environments edited by bart @ http://reductivelabs.com/trac/puppet/wiki/UsingMultipleEnvironments (by bart@kumina.nl)
[2008/05/07 03:48:26] <flakrat> Volcane, sabayon is pretty neat, looks like I can install it on el4, and it appears to be standard on el5. Thanks for pointing this out
[2008/05/07 03:50:41] @ Quit: glaw: ""it's just a ride....""
[2008/05/07 03:52:16] <ashp> http://reductivelabs.com/trac/puppet/attachment/wiki/UsingStoredConfiguration/kill_node_in_storedconfigs_db.rb
[2008/05/07 03:52:27] <ashp> Hmm, didn't puppetmasterd rename to [puppetd] in the conf?
[2008/05/07 03:52:46] <ashp> I was just playing with than and irb trying to get to grips with puppet
[2008/05/07 03:52:59] <ashp> and i noticed i don't have a [puppetmasterd] which may be odd
[2008/05/07 03:54:38] <ashp> Oh I guess you only need the puppetmasterd if you mess with databases, as my ldap stuff goes into main
[2008/05/07 03:58:34] <plathrop> ashp: There's a config section for each daemon
[2008/05/07 03:58:52] <ashp> I just realised I only have main and puppetd
[2008/05/07 03:58:55] <ashp> and no puppetmasterd
[2008/05/07 03:59:01] <ashp> it made me suddenly nervous I had done something terribly wrong
[2008/05/07 03:59:42] <plathrop> Nah, you only need a section if there's something specific to that daemon :-)
[2008/05/07 03:59:50] <ashp> I have taken to just reading chunks of ruby hoping it one day makes sense
[2008/05/07 04:00:15] <plathrop> That wil certainly help the learning process.
[2008/05/07 04:00:36] <ashp> It's the age old 'I have nothing simple enough I need to write' to get to grips
[2008/05/07 04:00:44] <plathrop> I have some beefs with Ruby. The things it automagically does are noce, but sometimes the magic makes code harder to follow.
[2008/05/07 04:00:45] <ashp> diving into puppet and trying to figure out how user/ or group/ providers work is just too much
[2008/05/07 04:01:03] <ashp> I think that's probably part of it, sometimes it seems too clever
[2008/05/07 04:01:14] <ashp> and also like most languages people start writing 'clever syntax'
[2008/05/07 04:02:01] <plathrop> Yeah. At the same time, most really powerful language tools (meta-object programming, real macros, etc.) are hard to follow until you have an 'AHA!' moment.
[2008/05/07 04:02:08] <plathrop> Ruby just has a lot of that.
[2008/05/07 04:02:18] <plathrop> Not as much as Common Lisp, but a lot :-P
[2008/05/07 04:02:25] <ashp> I liked python as it kind of made them spell everything out
[2008/05/07 04:02:30] <ashp> so i could follow that easier :)
[2008/05/07 04:03:22] <plathrop> Yeah, it's definitely a different perspective.
[2008/05/07 04:03:36] <plathrop> ashp: You have a github account?
[2008/05/07 04:03:46] @ Quit: f--z: "KVIrc 3.2.5 Anomalies http://www.kvirc.net/"
[2008/05/07 04:04:12] <ashp> Nope, haven't needed one yet
[2008/05/07 04:04:39] <plathrop> Ah. I have a private repo I'm not ready to make public that I've been (slowly) pushing my ops tools to; they're written in Ruby.
[2008/05/07 04:05:07] @ Quit: andrewcshafer:
[2008/05/07 04:05:10] <plathrop> If you get an account I'll open it up to you. Since I'm still a newbie it might help to see some code written by someone who doesn't yet use all the tricks.
[2008/05/07 04:05:12] <ashp> I should go make a github, smaller self contained stuff is what I need to see more of
[2008/05/07 04:05:17] <plathrop> If that's useful to you.
[2008/05/07 04:05:18] <ashp> rather than huge giant blobs of clever meta code :)
[2008/05/07 04:05:24] <ashp> it would definitely help, i'll go make an account
[2008/05/07 04:05:32] <ashp> it's that or work and heaven forbid I do that :)
[2008/05/07 04:06:32] <plathrop> I hear ya
[2008/05/07 04:07:23] <ashp> the github signup page doesn't work in firefox3
[2008/05/07 04:07:26] <ashp> that gives me a lot of confidence
[2008/05/07 04:07:36] <ashp> (I have a github account as 'apenney' now)
[2008/05/07 04:07:45] <holoway> ashp: a few tips for reading puppet's source
[2008/05/07 04:08:03] <holoway> in ruby, everything is an object, including things you think of as a declaration
[2008/05/07 04:08:11] <ashp> holoway: I had considered briefly, in my insanity, trying to duplicate an existing provider and turn it into a base sudoers provider :)
[2008/05/07 04:09:15] <holoway> ah
[2008/05/07 04:09:27] <holoway> yeah, writing a sudo provider would be an intersting one
[2008/05/07 04:09:40] <ashp> I figured don't worry about the real complexity, get some of the basic types define and go from there
[2008/05/07 04:09:55] <ashp> but I struggle to follow the chain of stuff around puppet, I want to see more self contained stuff before I start branching out
[2008/05/07 04:09:55] <holoway> you would use the parsedfile provider
[2008/05/07 04:11:46] <ashp> http://alternateidea.com/blog/articles/2008/5/1/automating-rick-rolls-with-launchd <-- now I need to get hold of a coworkers mac
[2008/05/07 04:12:50] <benp-> nice
[2008/05/07 04:15:38] <fsweetser> so I'm reading through http://reductivelabs.com/trac/puppet/attachment/wiki/UsingMongrel/puppetmaster
[2008/05/07 04:15:46] <fsweetser> can anyone tell me what the --check option to puppetmaster does?
[2008/05/07 04:17:24] @ a-priori joined channel #puppet
[2008/05/07 04:20:07] <ashp> plathrop: so how do I see these tools you wrote? :)
[2008/05/07 04:24:10] <plathrop> ashp: One sec, I'll figure it out
[2008/05/07 04:24:37] <ashp> today i discovered our php security
[2008/05/07 04:24:40] <ashp> is a special snowflake
[2008/05/07 04:24:59] <ashp> they have credentials to the database in /share/credentials/, and then this weird function that takes a hash and makes that the filename
[2008/05/07 04:25:07] <ashp> so they use file:///this-database
[2008/05/07 04:25:17] <ashp> but it really stores it as LSD:L:DS%i55kl5kdlfksdlkdsljksdjk on the filesystem
[2008/05/07 04:25:18] <shiruken> yeah, I've seen that
[2008/05/07 04:25:28] <ashp> this is great and all but you can just cd /share/credentials and then GREP FOR ANY DATABASE YOU LIKE
[2008/05/07 04:26:00] <ashp> I'm not sure what's better but some kind of ACL based access would probably be a start
[2008/05/07 04:26:48] <plathrop> ashp: what's your github username?
[2008/05/07 04:26:52] <holoway> password escrow on deployment is the only good answer there, I think
[2008/05/07 04:27:19] <holoway> I don't know of any open source escrow apps
[2008/05/07 04:27:28] <ashp> plathrop: 'apenney'
[2008/05/07 04:27:37] <ashp> Yeah, it's kind of an awkward problem to solve.
[2008/05/07 04:28:00] <ashp> I don't think you can do acl's whereby you say /var/www/blah/index.php can only access /share/credentials/this-database.cred
[2008/05/07 04:28:06] <ashp> That would be better, but not massively
[2008/05/07 04:28:20] <holoway> well, the question is, what are you trying to solve
[2008/05/07 04:28:28] <holoway> assuming the machine is compromised
[2008/05/07 04:28:44] <ashp> exactly, the whole security thing is a joke
[2008/05/07 04:28:48] <ashp> they should just skip it altogether
[2008/05/07 04:28:58] <plathrop> ashp: I just added you as a collaborator, which I think adds the repository to your watchlist
[2008/05/07 04:29:01] <holoway> no matter what you do, you're screwed
[2008/05/07 04:29:09] <ashp> I guess the idea was to stop people finding some php hack and calling files directly by name
[2008/05/07 04:29:28] <ashp> plathrop: Yep, I can see it now :)
[2008/05/07 04:29:38] <ashp> i just see one file, is that right?
[2008/05/07 04:30:28] <plathrop> ashp: Yeah, right now that's all I've added. I'm cleaning stuff up.
[2008/05/07 04:30:33] <plathrop> Hopefully more wil get in there soon.
[2008/05/07 04:30:38] @ Quit: danstoner_: "Leaving"
[2008/05/07 04:30:53] <ashp> k, just checking there wasn't 100 files secured and one unsecured or something :)
[2008/05/07 04:31:58] @ Quit: randybias:
[2008/05/07 04:33:33] @ Quit: kposs:
[2008/05/07 04:41:50] @ Quit: pleemans: "Ex-Chat"
[2008/05/07 04:48:32] <plathrop> ashp: Unfortunately my current $WORK is a Python shop, so I haven't had as much Ruby time
[2008/05/07 04:49:52] <ashp> sadly my current work is a php/broken shop :(
[2008/05/07 04:57:20] <plathrop> Alas. We'll just have to Ruby in our copious free time ;-)
[2008/05/07 04:59:16] <ashp> I feel terribly guilty for the tiny amount of work I seem to do, but I have nothing else really pressing that needs doing immediately
[2008/05/07 04:59:26] <ashp> it's all 'planning for the summer' when we start rebuilding servers into redhat/puppet
[2008/05/07 04:59:36] <ashp> and half the stuff we have already is just being removed fully
[2008/05/07 05:00:35] @ emerose joined channel #puppet
[2008/05/07 05:00:36] <plathrop> Then it's a good time to be 'building your skills'
[2008/05/07 05:01:04] <ashp> my wife has a baby next month so I'm mostly just coasting by right now due to my extreme lack of sleep :)
[2008/05/07 05:01:22] <ashp> due to being kicked all night by someone very uncomfortable
[2008/05/07 05:06:35] @ g1 joined channel #puppet
[2008/05/07 05:06:40] @ shadoi joined channel #puppet
[2008/05/07 05:09:22] @ oskapt joined channel #puppet
[2008/05/07 05:10:37] <plathrop> Hmmm... considering writing a sysctl provider...
[2008/05/07 05:12:39] @ \ask joined channel #puppet
[2008/05/07 05:19:21] @ jvanzyl joined channel #puppet
[2008/05/07 05:19:45] <fsweetser> plathrop: you mean like the one listed at wiki:PuppetModules ? =)
[2008/05/07 05:19:47] <gepetto> fsweetser: plathrop: wiki:PuppetModules is http://reductivelabs.com/trac/puppet/wiki/PuppetModules
[2008/05/07 05:20:04] <plathrop> fsweetser: You are my hero
[2008/05/07 05:20:52] <fsweetser> glad others are finding it useful
[2008/05/07 05:22:37] @ danstoner joined channel #puppet
[2008/05/07 05:23:18] @ rizwank joined channel #puppet
[2008/05/07 05:23:51] <plathrop> fsweetser: Where should I put it?
[2008/05/07 05:27:17] @ Quit: rizwank: Remote closed the connection
[2008/05/07 05:28:14] * plathrop can find lots of documentation on writing these things, but little on deploying them.
[2008/05/07 05:28:26] <shadoi> it's a type or a define?
[2008/05/07 05:28:39] <ashp> type
[2008/05/07 05:29:13] <plathrop> I've got two directories from the tarball "type/" and "provider/"
[2008/05/07 05:29:27] <shadoi> the "right" way to do it now is to put it in a module
[2008/05/07 05:29:32] <shadoi> wiki:PluginsInModules
[2008/05/07 05:29:33] <gepetto> shadoi: wiki: wiki:PluginsInModules is http://reductivelabs.com/trac/puppet/wiki/PluginsInModules
[2008/05/07 05:29:50] <plathrop> Right, but that doesn't tell me what to do with the "provider/" dir...
[2008/05/07 05:30:38] <shadoi> ah..hmm, well you can stick it in /usr/lib/ruby/1.8/puppet/provider
[2008/05/07 05:30:44] <shadoi> But I imagine it works in plugins too
[2008/05/07 05:30:46] <shadoi> I haven't tried.
[2008/05/07 05:31:41] <shadoi> technically a provider can be part of a type, it's just sensible to split them up.
[2008/05/07 05:32:25] <lak> works fine in plugins
[2008/05/07 05:33:08] @ Quit: danstoner: "Leaving"
[2008/05/07 05:33:09] <ashp> lak: I don't suppose you saw my mail to the list about the tagged() support
[2008/05/07 05:33:15] <lak> maybe?
[2008/05/07 05:33:20] <ashp> I still can't get it going and I'm wondering if I'm doing something terribly wrong
[2008/05/07 05:33:22] @ |Innocenti| joined channel #puppet
[2008/05/07 05:33:24] <lak> ah
[2008/05/07 05:33:26] <ashp> i have a class, rhythmyx, defined in a module of the same name
[2008/05/07 05:33:35] <ashp> and i want to check for that being included on a node in sudo/ module
[2008/05/07 05:33:40] <ashp> so that i can add a few extra lines based on it
[2008/05/07 05:33:53] <ashp> However nothing I do lets it evaluate to true so it doesn't work
[2008/05/07 05:34:23] <ashp> i'm not sure if it's a namespace problem or if tagged() just doesn't work how i expect
[2008/05/07 05:34:55] @ fbe joined channel #puppet
[2008/05/07 05:34:59] <lak> you're sure that the rhythmx class is evaluated before the sudo class?
[2008/05/07 05:36:01] <ashp> no, I'm not sure what controls the order of evaluation
[2008/05/07 05:36:16] <g1> is it possible for a variable in the node definition to take precedence over a variable defined in the site manifest?
[2008/05/07 05:36:18] <ashp> I have sudo as part of baseclass, and I just have both baseclass and rhythmyx defined in ldap as puppetclass
[2008/05/07 05:36:40] @ g1 is now known as gh_
[2008/05/07 05:36:41] <ashp> I put the $rhythmyx = tagged("rhythmyx") test into the init.pp for sudo, hoping it would work there
[2008/05/07 05:38:50] <plathrop> Hmm... "err: Could not retrieve catalog: Could not find resource type sysctl at /etc/puppet/modules/digg/manifests/webserver-node.pp:135 on node ash023.digg.internal"
[2008/05/07 05:39:01] <plathrop> Does the module need to be named "sysctl"
[2008/05/07 05:39:07] <shadoi> no
[2008/05/07 05:39:12] <plathrop> I just threw the provider into my site module.
[2008/05/07 05:39:26] <gh_> i have $nameservers = [ '1.2.3.4', '1.2.3.5' ] in the site.pp and for certain nodes i want to change that in the node definition
[2008/05/07 05:39:42] <shadoi> plathrop: ls -l site/plugins/type
[2008/05/07 05:40:26] <shadoi> gh_: nothing will stop you from redefining it in a separate scope.
[2008/05/07 05:40:40] <plathrop> shadoi: Aha! Need to put that "plugins" level in
[2008/05/07 05:41:15] <shadoi> :)
[2008/05/07 05:41:19] <holoway> anyone use drbd for postgresql hot spares?
[2008/05/07 05:43:01] <plathrop> pastie: url me
[2008/05/07 05:43:17] <pastie> http://pastie.org/192564 by plathrop.
[2008/05/07 05:43:39] <plathrop> shadoi: That's my ls. Even with the "plugins/" subdir I'm getting the same error
[2008/05/07 05:44:45] <shadoi> plathrop: you have the config options as shown on that page?
[2008/05/07 05:44:52] <shadoi> pastie your puppet.conf
[2008/05/07 05:46:23] <plathrop> shadoi: I thought I had, but looking at it, I don't. *feels stupid*
[2008/05/07 05:46:31] <shadoi> hehe
[2008/05/07 05:47:13] @ Quit: euclid: Remote closed the connection
[2008/05/07 05:47:18] @ euclid joined channel #puppet
[2008/05/07 05:47:49] <lak> ashp: i don't really know what to tell you; you control ordering in the parser by when you include a class
[2008/05/07 05:48:05] <lak> but in your case, the rhythmx class has to be included before the sudo class
[2008/05/07 05:48:14] <lak> i know it's not great; i just can't think of a better way
[2008/05/07 05:48:20] <ashp> i wonder if swapping the order in ldap
[2008/05/07 05:48:24] <ashp> so it comes higher up would actually work
[2008/05/07 05:48:29] <ashp> as it may end up first in the array that way
[2008/05/07 05:48:31] <gh_> shadoi: i can set the variable in the node def, but it i think that the order is off, because the variable isn't set when i do notify's in my code
[2008/05/07 05:49:24] <lak> gh_: it's basically impossible to solve that with puppet's node support
[2008/05/07 05:50:03] <shadoi> gh_: I'd recommend using subclasses
[2008/05/07 05:50:17] <shadoi> use an external_node tool to make it dynamic
[2008/05/07 05:51:12] <gh_> i make all these assumptions based on domain, ie: what nameserver and ntp server to use.. but in the lab i need to use different values.. external_nodes sounds hopeful though :)
[2008/05/07 05:51:59] <ashp> hmm my ldap client is reordering my puppetclass defs, damn
[2008/05/07 05:52:03] <ashp> i need to have a think about this :)
[2008/05/07 05:53:49] <plathrop> shadoi: Thanks, that fixed it
[2008/05/07 05:53:58] <shadoi> cool
[2008/05/07 05:54:19] @ Quit: freiheit:
[2008/05/07 05:56:31] <holoway> gh_: external nodes is a great way to solve that problem you have
[2008/05/07 05:56:53] <holoway> we often will set a fact or attribute that reflects the environment a system is in
[2008/05/07 05:56:59] <holoway> (prod/qa/dev/lab, etc.)
[2008/05/07 05:57:03] <ashp> i am tempted at this point to find a way to hack up puppet to let me define what order to evaluate classes from ldap
[2008/05/07 05:57:16] <ashp> as i think it just returns them in a-z order
[2008/05/07 05:57:28] <lak> ashp: your classes from ldap aren't all getting tagged before any of them get evaluated?
[2008/05/07 05:57:48] <ashp> I don't think so
[2008/05/07 05:57:58] <holoway> and then use puppets conditional syntax to set up different values per environment
[2008/05/07 05:58:11] <ashp> I have puppetclass: baseclass and rhythmyx, and it's evaluating the sudo/ module included in baseclass before it tags rhythmyx
[2008/05/07 05:59:01] <lak> hrm
[2008/05/07 05:59:33] <ashp> I can do a notice statment to print $rhythmyx into my logs right?
[2008/05/07 05:59:35] <ashp> to check what it has
[2008/05/07 06:00:15] <lak> yeah
[2008/05/07 06:00:36] <plathrop> shadoi: Actually, it didn't. I'll pastie my configs.
[2008/05/07 06:00:43] <plathrop> pastie: more URLS!
[2008/05/07 06:01:46] @ Quit: jvanzyl:
[2008/05/07 06:01:57] @ Quit: Zothar_Work: "ChatZilla 0.9.82 [Firefox 2.0.0.14/2008040414]"
[2008/05/07 06:03:14] <pastie> http://pastie.org/192578 by plathrop.
[2008/05/07 06:03:15] <ashp> hmm, i can just do notice $rhythmyx, as a statement?
[2008/05/07 06:04:01] <plathrop> shadoi: Any idea what I'm doing wrong?
[2008/05/07 06:05:47] <ashp> lak: I guess tagged() fails as a notice "$rhythmyx" rather after the variable def fails to print anything
[2008/05/07 06:06:18] <lak> this is the kind of testing you need to do :)
[2008/05/07 06:07:04] <ashp> as it's just $rhythmyx = tagged("rhythmyx") above
[2008/05/07 06:07:28] <ashp> I guess I need tagged() to evaluate before it goes into the classes and 'does stuff'
[2008/05/07 06:07:55] <lak> i have to say, why not just have your sudoers file have all the stuff init?
[2008/05/07 06:07:58] <lak> in it, rather?
[2008/05/07 06:08:07] <lak> i know it's cross-concerns and stuff, but it's easy to do
[2008/05/07 06:08:11] <lak> and would save you a lot of time
[2008/05/07 06:08:18] <plathrop> When I comment out the sysctl stuff, it seems to do the right thing...
[2008/05/07 06:08:21] <ashp> I suppose there's not a major reason not to, but I figured this wouldn't be the only file I come across
[2008/05/07 06:08:31] <ashp> that I might need to add a few lines for different hosts
[2008/05/07 06:08:45] <ashp> i have other templates that already check hostname or regexp on the ip for matches
[2008/05/07 06:08:49] @ oxtail joined channel #puppet
[2008/05/07 06:08:52] <ashp> so i thought matching for included classes would be reused
[2008/05/07 06:08:56] <lak> you're *always* going to be better off managing things with resources instead of having hooks in your templates or whatever
[2008/05/07 06:09:10] <lak> so it'd work if you built 'sudo' resources that you could use to add functionality
[2008/05/07 06:09:17] <lak> but the way you're doing it will always be hard
[2008/05/07 06:09:25] <lak> see the iptables fragment example onthe wiki
[2008/05/07 06:09:41] <plathrop> Duh...
[2008/05/07 06:09:45] <ashp> I started looking into modifying a provider to add that support but I can't even fix the redhat interface{}, yet alone that
[2008/05/07 06:09:49] <plathrop> Need my puppetmaster to have the plugin, of course.
[2008/05/07 06:09:58] <ashp> i'll check out the itpables stuff to see if that's more what i want
[2008/05/07 06:10:42] <ashp> Ohh ok, build fragments then cat them all together at the end basically
[2008/05/07 06:12:05] <lak> yeah
[2008/05/07 06:14:13] <shadoi> plathrop: yeah, if you don't have a puppet client on the puppetmaster you can put it in the /usr/lib/ruby/1.8/puppet dirs
[2008/05/07 06:14:37] <duritong> lak: may I ask what is the status of the proposed authorized_keys type? I could package it here and test it a bit, if it's unclear yet if it is working as expected
[2008/05/07 06:14:58] <lak> duritong: i just haven't had a chance to look at it yet
[2008/05/07 06:15:09] <lak> i'm not in a release cycle yet, so it wouldn't get released right away anyway
[2008/05/07 06:15:31] <lak> once i finish this bit of dev work, i'll hopefully lift my head and try to get a 0.24.5 release out with some bug fixes
[2008/05/07 06:15:37] <lak> and it would include things like that
[2008/05/07 06:16:05] <duritong> ok so I check it out and make a company internal package, as there are also other things which I need from git (newer nagios types) ;)
[2008/05/07 06:16:15] <lak> but i'll look at it right now, just to see
[2008/05/07 06:16:30] <duritong> oh didn't want to load you with work ;)
[2008/05/07 06:16:30] <ashp> are you working on the whole webrick migration thingy?
[2008/05/07 06:18:59] <lak> duritong: hmm, no tests for it
[2008/05/07 06:19:10] <lak> well, not webrick; xmlrpc => rest
[2008/05/07 06:19:34] <duritong> lak: ok I have a look at it and maybe I can write tests
[2008/05/07 06:19:42] <lak> that'd be great
[2008/05/07 06:19:54] <lak> i *really* don't want to accept new types/providers w/out tests
[2008/05/07 06:20:02] <lak> the whole interface thing kinda scarred me
[2008/05/07 06:20:06] * duritong fully agree
[2008/05/07 06:20:40] <duritong> but I can't promise anything
[2008/05/07 06:20:51] * duritong never have written tests in rspec
[2008/05/07 06:20:55] <duritong> yes
[2008/05/07 06:20:57] <duritong> yet
[2008/05/07 06:21:12] <ashp> Oh ok, I'm not sure of the difference between xmlrpc and rest, how is the work going? :)
[2008/05/07 06:21:56] <lak> http://github.com/lak/puppet/commits/rest_master
[2008/05/07 06:22:06] <lak> it's going well, but it's a lot of work
[2008/05/07 06:22:15] <lak> that's the branch i'm currently working in
[2008/05/07 06:22:45] <ashp> i finally signed up on github today so i can watch branches
[2008/05/07 06:23:06] * duritong is signing up right now ;)
[2008/05/07 06:23:10] <ashp> i assume the benefit to this switchover is mostly internal?
[2008/05/07 06:23:18] <plathrop> is holoway the template master around?
[2008/05/07 06:23:20] <plathrop> :-P
[2008/05/07 06:23:31] <holoway> hah
[2008/05/07 06:23:32] <holoway> yeah
[2008/05/07 06:24:09] <plathrop> I know I've asked you before, but I lost my notes on it. In a template, how do you/can you check if a variable is empty/undefined?
[2008/05/07 06:25:14] <lak> ashp: well, it should make some (or even many) things much faster, like file serving
[2008/05/07 06:25:21] <lak> and it will allow *much* better integration with puppet
[2008/05/07 06:25:36] <plathrop> lak: Yay for performance and interop improvements!
[2008/05/07 06:25:55] <plathrop> duritong: I've written some rspec tests, feel free to ping me for help.
[2008/05/07 06:25:55] <ashp> I suppose my next question is 'is there a roadmap for your current plans' just so I know where it's going and what to plan ahead for
[2008/05/07 06:26:18] <duritong> plathrop: thanks :)
[2008/05/07 06:27:01] <duritong> plathrop: I test it in in the class and only use real_$variablename in the templates
[2008/05/07 06:27:21] <gepetto> ::puppet:: Ticket #1214 (enhancement created): Enhanced RedHat init script wth mongrel support @ http://reductivelabs.com/trac/puppet/ticket/1214 (by fs@wpi.edu)
[2008/05/07 06:27:24] <duritong> the problem is kindof that puppet-variables aren't variables in erb, rather they are methods
[2008/05/07 06:27:50] <plathrop> duritong: Can you pastie me an example?
[2008/05/07 06:27:53] <duritong> oh neat ticket, wanted to contribute that already some time ago :/
[2008/05/07 06:30:50] <pastie> plathrop: http://pastie.org/192600 by duritong.
[2008/05/07 06:31:16] <plathrop> thanks!
[2008/05/07 06:31:49] <duritong> this way you also ensure to have always default values
[2008/05/07 06:32:03] <duritong> but dunnot if this is a good way
[2008/05/07 06:32:42] @ Quit: shake-n-bake:
[2008/05/07 06:33:12] <plathrop> For now I'm just trying to fake something as a temporary hack, so it's cool
[2008/05/07 06:33:16] <plathrop> Thanks a lot
[2008/05/07 06:33:36] @ emerose_ joined channel #puppet
[2008/05/07 06:36:19] @ shake-n-bake joined channel #puppet
[2008/05/07 06:39:48] @ Quit: emerose: Read error: 110 (Connection timed out)
[2008/05/07 06:45:06] @ martha left channel #puppet ()
[2008/05/07 06:47:21] @ shake-n-bake_ joined channel #puppet
[2008/05/07 06:47:29] <lak> duritong: duh, it's been pointed out to me that that authorized_keys type has tests
[2008/05/07 06:47:41] <lak> i'll get it integrated tonight, assuming there aren't any gotchas in the tests
[2008/05/07 06:48:02] <duritong> ah ok so nice :)
[2008/05/07 06:48:12] <ashp> lak: Hmm, where can I notice $puppetclass to see the contents of the array it gets from ldap? :)
[2008/05/07 06:48:17] <duritong> so i'll look at it when it's integrated
[2008/05/07 06:48:22] <ashp> just in site.pp?
[2008/05/07 06:48:35] <lak> ashp: what version?
[2008/05/07 06:48:37] <lak> of puppet
[2008/05/07 06:48:38] <ashp> 0.24.4
[2008/05/07 06:50:27] <plathrop> duritong: That paste did the trick quite nicely, thanks
[2008/05/07 06:51:16] <lak> ashp: i don't really know what $puppetclass variable you mean
[2008/05/07 06:51:36] <ashp> Well, I use ldap so i have several puppetclass: baseclass style entries
[2008/05/07 06:51:42] @ ezralini joined channel #puppet
[2008/05/07 06:51:43] <ashp> i assume puppet fetches these as an array
[2008/05/07 06:51:54] <ashp> I just want to print that array so i can see what order it's including the classes in
[2008/05/07 06:52:49] <duritong> plathrop: no problem
[2008/05/07 06:54:38] <lak> ashp: about the best thing to do, i guess, is add some printf-style debugging to lib/puppet/indirector/node/ldap.rb
[2008/05/07 06:54:45] @ Quit: shake-n-bake: Read error: 110 (Connection timed out)
[2008/05/07 06:55:17] <ashp> i'll give it a whirl, where is the code that handles tagged, I was poking around but there's quite a lot of references to tagged
[2008/05/07 06:55:23] <ashp> i wanted to check how that worked to get it clear in my mind
[2008/05/07 06:56:35] @ shake-n-bake joined channel #puppet
[2008/05/07 06:56:55] <lak> that ldap.rb does most of it, and the evaluate_classes method in parser/compiler.rb does the rest
[2008/05/07 07:02:35] <ezralini> I've been getting into the habit of testing config changes by running "puppetd --test --noop" on a client to see what will happen. However, I've noticed that certain types of errors in my puppetmaster config will give me syntax errors, but the output on the CLI on the client shows no indication that anything is wrong.
[2008/05/07 07:02:50] @ Quit: oxtail: Read error: 113 (No route to host)
[2008/05/07 07:03:04] <ezralini> Is there a better way to test on the client, so that I'll know that the config is bad on the master?
[2008/05/07 07:03:18] <lak> ezralini: got anything reproducible consistently? and is this 0.24.4?
[2008/05/07 07:03:26] <ezralini> lak: yes, and yes
[2008/05/07 07:03:35] <ezralini> let me cook it up
[2008/05/07 07:03:44] <lak> ah
[2008/05/07 07:03:48] <lak> please file, then
[2008/05/07 07:03:54] <ezralini> oh, ok
[2008/05/07 07:04:00] <ezralini> I wasn't thinking that this was a bug
[2008/05/07 07:04:11] <ezralini> I thought it was the way I was using Puppet
[2008/05/07 07:06:34] <lak> well, if you're getting exceptions on the server that aren't propagating to the client, it's a bug
[2008/05/07 07:07:26] @ zobbo joined channel #puppet
[2008/05/07 07:07:32] <ezralini> ok
[2008/05/07 07:08:54] @ andrewcshafer joined channel #puppet
[2008/05/07 07:09:27] @ rizwank joined channel #puppet
[2008/05/07 07:09:42] <rizwank> Hi there. I'm doing my first new puppet installe,d and I'm also trying to follow the 2.0 'Best Practices' Document
[2008/05/07 07:10:08] <rizwank> And I'm having trouble really udnerstanding if 'modules' are things I create myself or import from elsewhere (and I'm having import troubles)
[2008/05/07 07:11:31] @ Quit: shake-n-bake_: Read error: 110 (Connection timed out)
[2008/05/07 07:11:51] <lak> both :)
[2008/05/07 07:11:57] <lak> you can write your own, or download existing moduls
[2008/05/07 07:13:46] @ randybias joined channel #puppet
[2008/05/07 07:14:09] @ Quit: |Innocenti|: Read error: 110 (Connection timed out)
[2008/05/07 07:14:46] <rizwank> well, for example.
[2008/05/07 07:15:02] <rizwank> I used cft to capture changes to yum repositories
[2008/05/07 07:15:40] @ Quit: kenvandine: "Ex-Chat"
[2008/05/07 07:15:50] <rizwank> it's not standalone by any means, I just need to place those in my 'best practices tree' and find some way to include those, and i'm kind of stuck.
[2008/05/07 07:17:43] <lak> i expect someone on the channel can give you some help; i'd do so, but i'm kinda trying to get some dev done :/
[2008/05/07 07:19:12] <rizwank> Heh.
[2008/05/07 07:22:26] <lak> the general rule is, create a module with a name that maps to what you're trying to do -- e.g., postgres, apache, etc.
[2008/05/07 07:22:36] <lak> create a manifests/init.pp file in there, add a class with the same name as the module
[2008/05/07 07:22:43] <lak> and put your puppet code to manage that thing into that class
[2008/05/07 07:22:53] <lak> e.g., create a 'postgres' class in postgres/manifests/init.pp
[2008/05/07 07:22:59] <lak> and have your package resource in there
[2008/05/07 07:25:52] <rizwank> will it autoload to include?
[2008/05/07 07:27:26] <lak> as long as everything is named and stored correctly, yes
[2008/05/07 07:28:11] <rizwank> so it fetches site.pp first and knows to go to ../modules/<modulename>/manifest/init.pp ?
[2008/05/07 07:30:48] @ Quit: a-priori:
[2008/05/07 07:32:44] <ezralini> If I knew my way around modules, I'd help you out, lak
[2008/05/07 07:32:56] <lak> rizwank: right
[2008/05/07 07:33:05] <lak> loads that, then looks for a class named <modulename>
[2008/05/07 07:33:59] <gepetto> ::puppet:: Ticket #1215 (defect created): Some syntax errors are not visible when running puppetd from the CLI @ http://reductivelabs.com/trac/puppet/ticket/1215 (by ezramound@gmail.com)
[2008/05/07 07:34:01] @ oxtail joined channel #puppet
[2008/05/07 07:35:26] <rizwank> so i'd have to include <modulename> explicitly if I'm only calling <modulename>::centos for instance?
[2008/05/07 07:36:11] <rizwank> oh just noticed something
[2008/05/07 07:36:48] <rizwank> the module structure might be overkill - adding one for each service the system might use - in this case, which yum repos...
[2008/05/07 07:36:54] <rizwank> (for me, anyhow. hmm)
[2008/05/07 07:36:59] @ shenson is now known as shenson_not_here
[2008/05/07 07:37:03] <rizwank> let me try this and ill msg if I'm still confused. Thanks!
[2008/05/07 07:45:41] <Wakko666> fsweetser: ping
[2008/05/07 07:46:25] <fsweetser> Wakko666: pong
[2008/05/07 07:47:46] <Wakko666> fsweetser: i'm working on creating some tests for your selinux patch. care to take a look and make sure i'm on the right path? i'm a bit new to ruby, so I don't trust my code.
[2008/05/07 07:48:01] <fsweetser> sure! where should I look?
[2008/05/07 07:48:16] <Wakko666> fsweetser: http://pastie.org/192666
[2008/05/07 07:49:17] <fsweetser> reading now...
[2008/05/07 07:49:40] <Wakko666> fsweetser: the file context test succeeds, the other two don't. i'm not sure if it's me, or an actual bug. semodule's syncversion param appears to only accept 'true' as a value, which doesn't seem right to me.
[2008/05/07 07:50:05] @ shenson_not_here is now known as shenson
[2008/05/07 07:50:21] <fsweetser> well, for the boolean, i don't think you can test an arbitrary boolean, the way you can create and test an arbitrary file
[2008/05/07 07:50:29] @ _newbie_ joined channel #puppet
[2008/05/07 07:50:31] <shadoi> lak: what causes puppet to set all the Puppet[:<section_key>] variables?
[2008/05/07 07:50:33] <shadoi> http://reductivelabs.com/trac/puppet/attachment/wiki/UsingStoredConfiguration/kill_node_in_storedconfigs_db.rb
[2008/05/07 07:50:34] <fsweetser> the boolean has to be defined in policy for it to exist
[2008/05/07 07:50:54] <shadoi> all that DB setup code should just be a call to Puppet::Rails.connect, but it won't work.
[2008/05/07 07:51:07] <lak> Puppet.parse_config is probably what you want
[2008/05/07 07:51:10] <fsweetser> Wakko666: I'm betting it's the same case for semodule
[2008/05/07 07:51:13] <lak> that reads in the config file
[2008/05/07 07:51:16] <shadoi> lak: it's in there, it doesn't work
[2008/05/07 07:51:18] <Wakko666> fsweetser: let me see...
[2008/05/07 07:51:36] <fsweetser> Wakko666: also for the synvcersion, it could certainly be made to accept false, which would basically be a no-op
[2008/05/07 07:51:43] <lak> Puppet::Rails.init maybe?
[2008/05/07 07:51:47] <shadoi> lak: I can use that instance_values trick to see the right settings
[2008/05/07 07:51:50] <shadoi> nope
[2008/05/07 07:52:06] <shadoi> but they don't get set as Puppet[:dbadapter] for example
[2008/05/07 07:52:29] <lak> what do you mean, nope? why not just use that to connect?
[2008/05/07 07:52:37] <fsweetser> Wakko666: I have to run, but thanks a bunch for working on the test code - I haven't had time to figure out which way is up on writing them =)
[2008/05/07 07:52:39] <shadoi> init doesn't work either
[2008/05/07 07:52:46] <shadoi> it just calls connect anyway
[2008/05/07 07:52:49] <Wakko666> fsweetser: the comment says "if set to false (the default)"... which tells me it should probably accept the no-op default. ;-)
[2008/05/07 07:52:59] <fsweetser> very true =)
[2008/05/07 07:53:07] <Wakko666> fsweetser: ok. i'll keep working on 'em and i'll ping you again when i get further
[2008/05/07 07:53:17] <fsweetser> thanks!
[2008/05/07 07:54:32] <shadoi> lak: http://pastie.org/192670
[2008/05/07 07:55:03] @ Quit: Innocenti: Client Quit
[2008/05/07 07:55:30] <shadoi> lak: I suppose I can just make connect take a block or something, but I'm just curious why it works when puppetmasterd uses it, but not when used as a library.
[2008/05/07 07:56:06] <lak> shadoi: set Puppet[:name] to 'puppetmasterd'
[2008/05/07 07:57:46] <shadoi> nope
[2008/05/07 07:57:59] <shadoi> I did it before the parse_config call
[2008/05/07 07:59:34] @ mib_hina9m joined channel #puppet
[2008/05/07 08:00:05] @ Quit: mib_hina9m: Client Quit
[2008/05/07 08:03:03] <fujin> shadoi: parse_config should do it dude.. that's how I get my settings out for puppetlast
[2008/05/07 08:03:20] <lak> i agree
[2008/05/07 08:04:06] <fujin> you just say Puppet[:config] = "/etc/puppet/puppet.conf"
[2008/05/07 08:04:09] <fujin> and Puppet.parse_config
[2008/05/07 08:04:20] <fujin> and then it makes Puppet[:stuff] all work magically
[2008/05/07 08:04:23] <fujin> (from what I've seen anyway..)
[2008/05/07 08:04:40] <lak> shadoi: so you're finding that you're not getting the value, when you do Puppet[:dbadapter]?
[2008/05/07 08:05:06] <lak> maybe my script is only working because i'm using the defaults, but i just wrote a script a couple of days ago that hits the db
[2008/05/07 08:05:47] @ Quit: randybias:
[2008/05/07 08:08:12] @ Innocenti joined channel #puppet
[2008/05/07 08:08:41] <plathrop> Anyone installing PEAR packages w/ Puppet?
[2008/05/07 08:08:52] @ jvanzyl joined channel #puppet
[2008/05/07 08:08:54] <plathrop> I'm wondering if a custom provider is the right way to go here.
[2008/05/07 08:09:13] <rizwank> does puppet master cache files? I've found that I have to restart puppetmaster if I make any changes to the underlying puppet files
[2008/05/07 08:09:56] <plathrop> rizwank: puppet will reload the files automatically if they change. However, if there is a syntax error, it will not reload.
[2008/05/07 08:10:41] <rizwank> Thanks.
[2008/05/07 08:10:50] <rizwank> I've got an issue with not being able to find a class
[2008/05/07 08:11:05] <rizwank> site.pp includes templates and nodes.
[2008/05/07 08:11:31] <rizwank> nodes defines default to include baseclass and restaurant-server
[2008/05/07 08:11:59] <rizwank> templates - class baseclass includes yum::centos
[2008/05/07 08:12:35] <rizwank> ../modules/yum/manifests/centos.pp contains a definition for yum::centos, but I'm getting a 'Could not find class' issue
[2008/05/07 08:14:25] <rizwank> I'm not sure what I'm doing wrong, given that the module organization doc says that I can do it with module lookup
[2008/05/07 08:16:01] <plathrop> rizwank: pastie your configs? I'll take a look
[2008/05/07 08:16:14] <rizwank> I can tar up the dir, if you'd like
[2008/05/07 08:16:53] <rizwank> (I'm new to puppet, but trying to get it to start managing some of our deployed servers, so I'm taking something simple as my first config, then going to make more changes with cft logging them)
[2008/05/07 08:19:28] <plathrop> rizwank: tar would be unweildy for me right now. I don't know much about yum, or centos, or any redhat variant, so I may not be the best person to help.
[2008/05/07 08:19:48] <rizwank> It's not a yum specific problem. I'll pastebin the files.
[2008/05/07 08:21:27] <rizwank> all relevant files : http://pastebin.com/m6fb7568f
[2008/05/07 08:21:31] <rizwank> Thanks so much =)
[2008/05/07 08:25:17] <plathrop> rizwank: You may be trying to go too complicated at first. That being said, I don't see anything obviously wrong with your setup.
[2008/05/07 08:25:37] @ shake-n-bake_ joined channel #puppet
[2008/05/07 08:25:51] <rizwank> so including yum::centos should fetch the file ?
[2008/05/07 08:25:56] <rizwank> and it's okay that init.pp is empty?
[2008/05/07 08:26:09] <rizwank> (and yes, I'm this close to throwing out the best practice doc and put them all in a flat dir for now
[2008/05/07 08:26:18] <rizwank> but since I'm going to serve files, I'm going to have to deal with this again)
[2008/05/07 08:26:40] <plathrop> rizwank: The "Best Practices" thing is *Stanford's* best practice. I haven't found it to fit my site at all...
[2008/05/07 08:26:47] <plathrop> I highly recommend starting simple
[2008/05/07 08:26:55] <rizwank> (just realized something)
[2008/05/07 08:27:01] <plathrop> I have a couple empty init.pp files
[2008/05/07 08:27:08] <plathrop> They work great
[2008/05/07 08:27:08] <rizwank> since it's in modules/yum, I don't need yum:: infront of theclass def
[2008/05/07 08:27:12] <rizwank> really? hmm
[2008/05/07 08:27:39] <plathrop> Also, I define my classes as class *module*::*classname* so I don't think that is your problem either.
[2008/05/07 08:27:46] @ Quit: felix_da_catz: Connection timed out
[2008/05/07 08:27:50] <plathrop> What do you get as an error?
[2008/05/07 08:28:21] <rizwank> Tue May 06 15:27:39 -0700 2008 Puppet (err): Could not retrieve catalog: Could not find class yum::centos in namespaces baseclass at /opt/uwink/server/puppet/manifests/templates.pp:21 on node dell.endoftheuniverse.uwink.com
[2008/05/07 08:29:04] <rizwank> is the namespace theproblem?
[2008/05/07 08:29:05] <plathrop> rizwank: That's a weird error... hmm...
[2008/05/07 08:29:38] <fujin> o_0
[2008/05/07 08:30:27] <rizwank> I wish someone had just published their puppet directory so I could see it in action ... not sure what's up with this namespace issue
[2008/05/07 08:30:55] <holoway> fujin: how's your fancy dispaly tool coming laong?
[2008/05/07 08:30:58] <plathrop> rizwank: I'd love to, but the one place where I'm using modules actively I'm suffering nder a gag order.
[2008/05/07 08:31:06] <rizwank> hah!
[2008/05/07 08:31:13] <fujin> holoway: Haven't worked on it at all to be honest, I've been a little preoccupied with Age of Conan
[2008/05/07 08:31:14] <rizwank> yeah, I can see how that would be an issue ;p
[2008/05/07 08:31:16] <plathrop> Take a look at my blog, there's some useful stuff there: http://plathrop.tertiusfamily.net/blog
[2008/05/07 08:31:27] <plathrop> But nothing on this specific issue.
[2008/05/07 08:32:32] <plathrop> rizwank: Try isolating it down to the simplest possible case.
[2008/05/07 08:32:47] <rizwank> that's what's funny, I thought I had.
[2008/05/07 08:32:56] <rizwank> although I'm seeing how you write your modules much more generically
[2008/05/07 08:33:03] <rizwank> and there's some neat falloffs from that
[2008/05/07 08:33:56] @ Quit: shake-n-bake: Read error: 110 (Connection timed out)
[2008/05/07 08:34:12] <plathrop> rizwank: Yeah, sorry I can't be more helpful, but I'm not seeing it.
[2008/05/07 08:34:27] <rizwank> fair enough =) I may just go to asingle directory approach for it for now
[2008/05/07 08:34:45] <rizwank> some other questions - lets say I need to modify a line in my.cnf - is there a 'best' way of setting this using puppet?
[2008/05/07 08:34:55] <rizwank> Or would it be to have the entire file served from puppet?
[2008/05/07 08:35:27] <rizwank> I saw the early mention of parseconfig, but that doesn't seem to be integrated with Puppet
[2008/05/07 08:35:30] <plathrop> rizwank: That's a tricky question. It's best to manage *everything* in Puppet. Failing that, manage the entirety of a service in Puppet.
[2008/05/07 08:35:59] <plathrop> rizwank: There is a "line" define somewhere (I think in DavidS' repo) that can touch specific lines of files.
[2008/05/07 08:36:11] <rizwank> DavidS's ?
[2008/05/07 08:36:28] <rizwank> hmm, ok, but there's no easy way to use something like parseconfig to ensure that some value is set to on, etc.
[2008/05/07 08:37:16] <plathrop> rizwank: To my knowledge, at the moment, not really.
[2008/05/07 08:37:23] <rizwank> hmm.
[2008/05/07 08:37:25] <plathrop> Though providers are fairly easy to write
[2008/05/07 08:37:30] <rizwank> ok, I'm just going to a flat file structure, then.
[2008/05/07 08:37:38] <rizwank> all my pp files in one location for now
[2008/05/07 08:37:42] <rizwank> set thethings that are easy to set
[2008/05/07 08:37:48] <rizwank> and break it up into modules later, I guess. sigh
[2008/05/07 08:38:03] <plathrop> rizwank: That's a good direction to go, honestly. Don't overengineer
[2008/05/07 08:38:06] <rizwank> with regards to my initial problem - is themailing list the best way to go?
[2008/05/07 08:38:21] <plathrop> rizwank: Yeah, the list is pretty responsive even when IRC is dead
[2008/05/07 08:38:53] <gepetto> ::puppet:: Puppet Debian edited by technician @ http://reductivelabs.com/trac/puppet/wiki/PuppetDebian
[2008/05/07 08:39:45] @ Quit: Demosthenex: Read error: 110 (Connection timed out)
[2008/05/07 08:40:03] <rizwank> where's the best place to see if I'm duplicating work other people have done -- the recipies page?
[2008/05/07 08:40:39] <duritong> yes
[2008/05/07 08:40:46] <duritong> and there are some module repos
[2008/05/07 08:41:03] <duritong> like i have a yum repo module for centos 5 ;)
[2008/05/07 08:41:59] <duritong> the problem is a bit that module resources are quite cluttered at the moment
[2008/05/07 08:42:16] <duritong> there is sime ongoing discussion to make a central place for that
[2008/05/07 08:42:23] <emerose_> rizwank: do you get that namespace error if you break the include in baseclass up into separate include lines?
[2008/05/07 08:42:24] <duritong> but nothing really fixed yet
[2008/05/07 08:42:32] <MrProper_> mornin all
[2008/05/07 08:42:54] <emerose_> ie, include $operatingsystem \n include yum::centos \n etc
[2008/05/07 08:43:44] <rizwank> I've just got class baseclass {
[2008/05/07 08:43:44] <rizwank> include yum::centos
[2008/05/07 08:43:44] <rizwank> }
[2008/05/07 08:44:22] <emerose_> hm
[2008/05/07 08:44:49] <rizwank> It's not autoloading
[2008/05/07 08:44:59] <emerose_> is the moduledir set correctly in the puppet.conf
[2008/05/07 08:45:00] <emerose_> ?
[2008/05/07 08:47:14] <rizwank> It's not in my base puppet.conf
[2008/05/07 08:47:16] <rizwank> so probably not
[2008/05/07 08:47:35] <rizwank> I've got two seemingly relevant puppet config files /etc/sysconfig/puppetmaster and /etc/puppet/puppet.conf
[2008/05/07 08:47:50] @ roald joined channel #puppet
[2008/05/07 08:48:01] @ Quit: roald: Remote closed the connection
[2008/05/07 08:48:16] @ roald joined channel #puppet
[2008/05/07 08:48:46] <emerose_> try try sudo puppetd --genconfig and see what it thinks the modulepath is
[2008/05/07 08:49:08] <rizwank> on the server or client?
[2008/05/07 08:49:28] <emerose_> server
[2008/05/07 08:50:03] <duritong> rizwank: this looks like a path problem
[2008/05/07 08:51:09] <rizwank> yep, modulepath is set incorrectly.
[2008/05/07 08:51:32] <rizwank> my rpm that installed puppet has both a /etc/sysconfig/puppet(master) and /etc/puppet/puppet.conf and it's unclear which goes which
[2008/05/07 08:52:55] <emerose_> what is modulepath set to? /opt/uwink/server/puppet/modules?
[2008/05/07 08:53:13] <rizwank> negative.
[2008/05/07 08:53:17] <rizwank> it's set to thedefaults
[2008/05/07 08:53:51] <rizwank> so do I set modulepath = /opt/uwink/server/puppet/modules in the [main], [puppetd] or (?) [puppetmasterd] section of /etc/puppet/puppet.conf
[2008/05/07 08:54:16] <emerose_> in the puppetmasterd section
[2008/05/07 08:54:40] <emerose_> it should point to wherever the modules live -- i'm only assuming that /opt/uwink/server/puppet/modules is right
[2008/05/07 08:54:55] <rizwank> it is.
[2008/05/07 08:55:10] @ Demosthenes joined channel #puppet
[2008/05/07 08:56:27] @ ianm joined channel #puppet
[2008/05/07 08:56:37] <rizwank> should I do a getconfig on puppetd and puppetmasterd and combine them to make a new (much more explicit) puppet.conf?
[2008/05/07 08:56:58] @ Quit: plathrop: Remote closed the connection
[2008/05/07 08:57:06] @ plathrop joined channel #puppet
[2008/05/07 08:57:23] <fujin> blopr!
[2008/05/07 08:57:40] <fujin> rizwank: no reason, really
[2008/05/07 08:57:46] <fujin> just override the values you're using, leave the rest as defaults
[2008/05/07 08:57:59] <rizwank> ok
[2008/05/07 08:58:01] <emerose_> i don't know -- keeping things explicit means you wont be surprised if/when puppet changes its defaults -- but you'll also have to do more bookkeeping work
[2008/05/07 08:58:04] <duritong> /etc/sysconfig/puppet(master) is used by init.d script /etc/puppet/puppet.conf is used by puppet
[2008/05/07 08:58:09] <emerose_> aka, what fujin said
[2008/05/07 08:58:13] <rizwank> oh got it, thats why the sysconfigs are there.
[2008/05/07 08:58:28] <rizwank> so I don't have to edit the sysconfig if it's set in the conf.
[2008/05/07 08:58:46] <duritong> yep
[2008/05/07 08:59:06] @ shenson is now known as shenson_not_here
[2008/05/07 09:00:07] @ Quit: lak:
[2008/05/07 09:00:19] <shadoi> fujin: yeah it doesn't pick up new values
[2008/05/07 09:00:33] <shadoi> the settings probably have to be in [main] for it to work, but that's lame.
[2008/05/07 09:00:55] <fujin> pastie: gimme
[2008/05/07 09:02:37] <pastie> http://pastie.org/192727 by fujin.
[2008/05/07 09:02:49] <fujin> shadoi: seems to work fine for me, that dbname is in my puppetmasterd section
[2008/05/07 09:02:54] <MrProper_> does anyone know why useradd manage_password was removed?
[2008/05/07 09:03:11] <fujin> MrProper_: it wasn't, it requires libshadow-ruby
[2008/05/07 09:03:15] <fujin> or rather
[2008/05/07 09:03:23] <fujin> the shadow bindings for Ruby, depending on your distro
[2008/05/07 09:03:30] @ Quit: jeckersb: "Leaving"
[2008/05/07 09:03:33] <rizwank> I had to install libshadow manually
[2008/05/07 09:03:37] <rizwank> then cft handled passwords fine =)
[2008/05/07 09:03:53] <shadoi> fujin: Puppet[:dbadapter] work for oyu?
[2008/05/07 09:03:54] <MrProper_> fujin: http://reductivelabs.com/trac/puppet/wiki/TypeReference#id199 useradd says it cant do manage passwords
[2008/05/07 09:03:56] <shadoi> you*
[2008/05/07 09:04:26] <fujin> sec shadoi
[2008/05/07 09:04:54] <fujin> shadoi: odd, you're right;
[2008/05/07 09:04:57] <fujin> it spits out 'sqlite3'
[2008/05/07 09:05:08] <fujin> even though it's set to mysql
[2008/05/07 09:05:27] @ Quit: jvanzyl:
[2008/05/07 09:05:33] <fujin> shadoi: It's just spitting out the default values
[2008/05/07 09:05:50] <fujin> like it's not realising the puppetmaster section somewhere
[2008/05/07 09:05:55] <shadoi> exactly
[2008/05/07 09:06:33] <fujin> blah, where's luke gone!
[2008/05/07 09:07:24] <rizwank> neat
[2008/05/07 09:07:27] <rizwank> got itworking
[2008/05/07 09:07:53] <rizwank> one issue is that in templates in defining a restaurant-server class that nodes.pp can't find. I'm not sure if that's a namespace error or what... any thoughts there?
[2008/05/07 09:08:02] @ ezralini left channel #puppet ()
[2008/05/07 09:08:13] <shadoi> fujin: ah, I see, it thinks it's in the :rails section
[2008/05/07 09:08:17] <shadoi> I'll fix
[2008/05/07 09:09:29] <fujin> show me, when you're done :)
[2008/05/07 09:10:03] <shadoi> meh, still doesn't work
[2008/05/07 09:10:55] <shadoi> it shows up correctly when I do this: Puppet.settings.instance_variable_get(:@values)[:puppetmasterd]
[2008/05/07 09:11:01] <shadoi> so it's very confusing.
[2008/05/07 09:11:27] <fujin> what does .settings.. do?
[2008/05/07 09:12:08] <shadoi> Is how you instantiate a section of settings
[2008/05/07 09:12:15] <shadoi> Puppet.settings.use(:puppetmasterd)
[2008/05/07 09:12:16] <shadoi> for example
[2008/05/07 09:12:26] <shadoi> which Puppet::Rails.connect does.
[2008/05/07 09:13:41] @ jvanzyl joined channel #puppet
[2008/05/07 09:15:53] <fujin> hrm
[2008/05/07 09:18:40] @ Quit: _newbie_: Read error: 104 (Connection reset by peer)
[2008/05/07 09:20:08] <shadoi> fujin: Puppet[:dbname] default is puppet too btw.
[2008/05/07 09:21:27] @ _newbie_ joined channel #puppet
[2008/05/07 09:21:52] <fujin> yea
[2008/05/07 09:21:56] <fujin> I tried some of my other values
[2008/05/07 09:22:03] <fujin> and it pulled out the default value
[2008/05/07 09:22:20] <holoway> shadoi: any word on queuing/out of band inserting the storeconfigs data?
[2008/05/07 09:22:33] <shadoi> holoway: fujin is playing with it in PCC
[2008/05/07 09:22:50] <shadoi> I haven't had time
[2008/05/07 09:23:02] <holoway> have you started work at the new gig yet?
[2008/05/07 09:23:11] <shadoi> yeah
[2008/05/07 09:23:22] <shadoi> been doing 2 full time jobs for a while now. :)
[2008/05/07 09:23:24] <holoway> I'm still waiting for my NDA, so I can check it out
[2008/05/07 09:23:38] * holoway should email randy
[2008/05/07 09:23:52] <shadoi> I'm looking forward to a little downtime after the 15th
[2008/05/07 09:25:41] @ patobrien joined channel #puppet
[2008/05/07 09:26:25] <holoway> hey, anybody in here a twitter user?
[2008/05/07 09:26:36] * holoway has discovered it's goodness
[2008/05/07 09:26:38] <rizwank> what's advantage of using storeconfigs in a database? (What exactly is a toreconfig?)
[2008/05/07 09:26:53] * rizwank has twitter and uses it occasionally, but not often. Getting it to sync with LJ was a win though.
[2008/05/07 09:26:55] <shadoi> rizwank: export/collect, and puppetshow
[2008/05/07 09:27:05] <plathrop> rizwank: The advantage is theoretically export/collect
[2008/05/07 09:27:07] <rizwank> None of those are fmailiar to me.
[2008/05/07 09:27:18] <plathrop> But the real advantage is 170second configuration compilation times!
[2008/05/07 09:27:27] <plathrop> /sarcasm
[2008/05/07 09:27:32] <shadoi> plathrop: only the first time a node stores it's config.
[2008/05/07 09:27:41] <shadoi> should be < 20 seconds after that.
[2008/05/07 09:28:14] <shadoi> Unless your systems are in a huge state of flux
[2008/05/07 09:28:38] <shadoi> But yeah, it's nasty.
[2008/05/07 09:28:43] <duritong> can I use tags outside node definitions in site.pp?
[2008/05/07 09:28:54] <shadoi> tags can be used anywhere
[2008/05/07 09:29:03] <shadoi> well, on any resource
[2008/05/07 09:29:16] <duritong> i mean tag(foobar)
[2008/05/07 09:29:24] <shadoi> tagged(foobar) you mean?
[2008/05/07 09:30:34] <duritong> i think this is to test if a specific tag is there not?
[2008/05/07 09:30:43] <shadoi> duritong: what would you tag in site.pp?
[2008/05/07 09:31:07] <shadoi> I suppose you could apply a global tag there.
[2008/05/07 09:31:12] @ a-priori joined channel #puppet
[2008/05/07 09:31:28] <duritong> well i'm just thinking about what might be the best way to make munin and nagios includs in modules optional
[2008/05/07 09:32:19] <duritong> so if you have the tag use_munin, i'll include the specific munin-classes (for plugins), if not I don't to anything
[2008/05/07 09:32:40] @ Quit: jvanzyl:
[2008/05/07 09:32:48] <duritong> for example in class apache: if tagged(use_munin) { include munin::plugins::apache }
[2008/05/07 09:33:26] <duritong> like that I could set it by node
[2008/05/07 09:33:53] <duritong> or (and this I'm wondering) globaly in the site.pp for all nodes
[2008/05/07 09:34:21] <shadoi> well, by global, I mean _really_ global. Every single resource, everywhere would get the tag.
[2008/05/07 09:35:00] <holoway> duritong: I would probably just make it use the munin plugins everywhere
[2008/05/07 09:35:18] <holoway> you don't have to collect the data, and it will make no operational difference
[2008/05/07 09:35:18] <duritong> holoway: yeah me as wel
[2008/05/07 09:35:20] <duritong> l
[2008/05/07 09:35:39] <shadoi> make it inverse logic
[2008/05/07 09:35:40] <duritong> but nagios might be the better example
[2008/05/07 09:35:47] <shadoi> tag the exceptions that shouldn't get it.
[2008/05/07 09:35:50] @ Quit: oxtail: Read error: 113 (No route to host)
[2008/05/07 09:36:01] @ Quit: plathrop: "ERC Version 5.2 (IRC client for Emacs)"
[2008/05/07 09:36:22] <shadoi> then in the munin class, basically do nothing if that tag exists.
[2008/05/07 09:36:58] <duritong> well it doesn't matter which logic
[2008/05/07 09:37:14] <duritong> the question was more about setting tags globally
[2008/05/07 09:37:17] <duritong> -l
[2008/05/07 09:41:41] <fujin> hrm, my typo theme stopped working, weird
[2008/05/07 09:42:00] @ randybias joined channel #puppet
[2008/05/07 09:42:15] <shadoi> fujin: I think I'm giving up on hobo
[2008/05/07 09:42:26] <fujin> really?
[2008/05/07 09:42:35] <shadoi> DRYML is too inflexible
[2008/05/07 09:42:38] <fujin> heh
[2008/05/07 09:42:44] <fujin> from my small dealings with it, I noted the same
[2008/05/07 09:42:47] <fujin> i think I prefer rhtml
[2008/05/07 09:42:49] <duritong> this is also one thing when looked at it
[2008/05/07 09:42:49] <shadoi> I think it will be pretty awesome someday
[2008/05/07 09:42:53] <shadoi> but not for a while
[2008/05/07 09:43:34] <fujin> at least with erb/rhtml you can do some hardcore shit
[2008/05/07 09:43:53] <shadoi> well.. you can do anything in DRYML with erb, but if you need to... what's the point?
[2008/05/07 09:44:04] <shadoi> I dunno
[2008/05/07 09:44:05] <fujin> I think that the idea behind DRYML is that it is supposed to be inflexible
[2008/05/07 09:44:10] <shadoi> yeah
[2008/05/07 09:44:13] <fujin> all of your logic should be in your controllers
[2008/05/07 09:44:17] <holoway> have you used haml/sass?
[2008/05/07 09:44:21] <fujin> and you should just say &Host.blah
[2008/05/07 09:44:28] <fujin> haven't used haml yet
[2008/05/07 09:44:30] <shadoi> no, most of your logic should be in your model and helpers.
[2008/05/07 09:44:31] <fujin> there are just so many options :\
[2008/05/07 09:44:32] <holoway> if you're doing html, haml is awesome
[2008/05/07 09:44:37] <fujin> shadoi: blagh
[2008/05/07 09:44:46] <fujin> MODEL, CONTROLELR
[2008/05/07 09:44:48] <fujin> WHO CARES? :>
[2008/05/07 09:44:51] <shadoi> lol
[2008/05/07 09:45:03] <shadoi> If you read that article I showed you, it's obvious why you should. :)
[2008/05/07 09:45:08] <fujin> yeah I know
[2008/05/07 09:45:10] <fujin> I read it the other day
[2008/05/07 09:45:14] <fujin> brain confused
[2008/05/07 09:45:29] <shadoi> just look at the code complexity, the rest is babble
[2008/05/07 09:45:48] <holoway> it's a code complexity and re-use thing
[2008/05/07 09:46:02] <holoway> the more you have isolated in the model/library layers, the better of you are
[2008/05/07 09:46:57] <rizwank> So, some questions about organization.
[2008/05/07 09:47:07] <rizwank> I see the best practices has a services and clients dir
[2008/05/07 09:47:23] <rizwank> lets say I have a type of machine that has a bunch of different things it relies upon and services
[2008/05/07 09:47:51] <shadoi> nodes are separate from those two hiearchies, and sample from both usually.
[2008/05/07 09:47:59] <shadoi> hierarchies
[2008/05/07 09:48:06] <rizwank> so they both need to be inthemodule path?
[2008/05/07 09:48:07] <shadoi> that looks like gibberish for some reason.
[2008/05/07 09:48:12] <shadoi> rizwank: yes
[2008/05/07 09:48:26] <rizwank> So, lets say my current example. I have some yum repoistories that need to be setup (and some need to be setup to be excluded.)
[2008/05/07 09:48:52] <shadoi> we also have a modules/ hierarchy for generic modules that are neither services or clients.
[2008/05/07 09:49:02] <shadoi> it's just an organizational preference
[2008/05/07 09:49:38] <holoway> we only have a modules hierarchy
[2008/05/07 09:50:21] <shadoi> yeah, unless you have a lot of different clients and service, it's really overkill.
[2008/05/07 09:50:29] <shadoi> services*
[2008/05/07 09:50:37] <rizwank> we aren't really likely to have those at this point.
[2008/05/07 09:50:42] <holoway> we have a ton of services, but all our client data is in external nodes
[2008/05/07 09:51:09] <holoway> (we also distirbute updates to our clients, and they can do selective overrides, and all kind of other stuff like that)
[2008/05/07 09:51:54] <holoway> the moral of which is, structure it howevver makes sense for you, and then be consistent
[2008/05/07 09:52:24] <rizwank> I'm trying to figure out how much data should be explicitly named versus 'passed in'
[2008/05/07 09:52:33] @ Quit: _newbie_: Read error: 110 (Connection timed out)
[2008/05/07 09:53:02] <rizwank> As in making a generic yum container that takes in properties to demand some yum repos
[2008/05/07 09:53:59] <rizwank> Or I could copy davids
[2008/05/07 09:54:01] <rizwank> !
[2008/05/07 09:55:42] <infinity3> does someone have a yumrepo example i can use?
[2008/05/07 09:56:36] <shadoi> did you look on the wiki?
[2008/05/07 09:56:46] <duritong> https://git.puppet.immerda.ch/?p=module-yum;a=summary
[2008/05/07 09:56:55] @ Quit: Innocenti: Read error: 110 (Connection timed out)
[2008/05/07 09:57:36] <infinity3> mine errors
[2008/05/07 09:57:37] <infinity3> http://pastebin.com/m39870a3f
[2008/05/07 09:58:19] <duritong> baseurl is a string, so you have to quote
[2008/05/07 09:58:30] <infinity3> whats module-yum? is that something else?
[2008/05/07 09:58:36] <infinity3> k . let me try
[2008/05/07 09:58:49] <duritong> you wanted a working yum example
[2008/05/07 09:59:30] <infinity3> oh shit. works
[2008/05/07 10:00:36] <infinity3> duritong: is that a wrapper for yumrepo ?
[2008/05/07 10:00:57] <duritong> yes
[2008/05/07 10:01:07] <duritong> to manage the whole /etc/yum.repos.d
[2008/05/07 10:01:08] <infinity3> okay. i'll stick with the basics for the moment :)
[2008/05/07 10:01:30] <infinity3> but thanks for the link!!
[2008/05/07 10:02:06] @ Quit: patobrien: "Leaving"
[2008/05/07 10:02:27] <infinity3> your example is too complex for me right now. i just barely got into this puppet stuff
[2008/05/07 10:02:52] <rizwank> heh
[2008/05/07 10:03:05] <rizwank> inifitiy3
[2008/05/07 10:03:13] <rizwank> I've found a cheat (to me) for figuring these things out
[2008/05/07 10:03:15] <rizwank> use cft
[2008/05/07 10:03:28] <rizwank> cft begin ,make your yum change, use cft finish and the cft manifest to see thechanges
[2008/05/07 10:03:32] <rizwank> and it's in puppet format
[2008/05/07 10:03:54] <duritong> yeah cft is nice to start
[2008/05/07 10:04:43] <infinity3> cft ?
[2008/05/07 10:04:49] <infinity3> whats the link for that one?
[2008/05/07 10:05:35] <fujin> cfg?
[2008/05/07 10:05:39] <fujin> cft?
[2008/05/07 10:05:45] <infinity3> weird
[2008/05/07 10:05:47] <infinity3> found it
[2008/05/07 10:05:51] <infinity3> http://cft.et.redhat.com/
[2008/05/07 10:05:54] <rizwank> http://www.google.com/url?sa=t&ct=res&cd=1&url=http%3A%2F%2Fcft.et.redhat.com%2F&ei=XPIgSN30O46spwSy6vnCCQ&usg=AFQjCNEAh5n-L-3bzgI9veu5B2AhqwxAsQ&sig2=NI1HwlvpKSAyxA_toYEdww
[2008/05/07 10:05:59] <rizwank> yeah, I love it.
[2008/05/07 10:06:24] <rizwank> It'll also allow track FS changes so that if you *need* to manually apply fs changes, it'll track them
[2008/05/07 10:07:52] <infinity3> wow. thats frekin COOL
[2008/05/07 10:08:16] <shadoi> yeah, we need a debianista to port it.
[2008/05/07 10:08:35] <infinity3> yea. definately needs to be ported to debian
[2008/05/07 10:09:24] <infinity3> i could have used that when i needed to fix tzdata
[2008/05/07 10:26:35] <fujin> heh
[2008/05/07 10:26:37] <fujin> well, that's random.
[2008/05/07 10:26:41] <fujin> Who made it?
[2008/05/07 10:27:18] <fujin> oh
[2008/05/07 10:27:19] <fujin> dlutter
[2008/05/07 10:27:22] <fujin> heh, awesome.
[2008/05/07 10:27:25] <holoway> fujin: works for redhat only
[2008/05/07 10:27:27] <fujin> It's kind of like etckeeper, but with Git
[2008/05/07 10:27:34] <fujin> err
[2008/05/07 10:27:35] <fujin> s/Git/puppet/
[2008/05/07 10:32:54] <shadoi> fujin: how's PCC going?
[2008/05/07 10:33:17] <fujin> It's not :(
[2008/05/07 10:33:22] <shadoi> ah, bummer
[2008/05/07 10:33:29] <fujin> I haven't worked on it at all
[2008/05/07 10:33:41] <fujin> too much stuff going on - it's really a side project for me to attempt to learn more rails/ruby
[2008/05/07 10:34:07] <fujin> I managed to solve my immediate requirements the other day with #1210
[2008/05/07 10:34:10] <gepetto> fujin: #1210 is http://reductivelabs.com/trac/puppet/ticket/1210 "tagmail could allow a template for outbound mail formatting"
[2008/05/07 10:34:23] <fujin> I still need to either write some old unit tests for my changes or port all of the reports unit tests to rspec
[2008/05/07 10:34:26] * fujin sighs
[2008/05/07 10:34:28] <fujin> such a daunting task
[2008/05/07 10:42:14] @ kenvandine joined channel #puppet
[2008/05/07 10:44:09] <fujin> shadoi: familiar with rspec or unitttest?
[2008/05/07 10:47:14] @ felix_da_catz joined channel #puppet
[2008/05/07 10:48:07] <infinity3> anyone know where i can get RHEL4 amd64 binaries?
[2008/05/07 10:48:18] <infinity3> i see i386 here : http://people.redhat.com/dlutter/yum/
[2008/05/07 10:50:24] <infinity3> is "puppet-0.24.4-1.el4.i386.rpm " i386 specific or is it really noarch ?
[2008/05/07 10:55:04] <rizwank> download the rpm and do rpm -qp <rpm> --filesbypkg
[2008/05/07 10:55:10] <rizwank> see if it actually installed any binaries
[2008/05/07 10:55:28] <rizwank> I think it's all ruby files
[2008/05/07 10:58:11] @ johnf joined channel #puppet
[2008/05/07 11:01:17] <fujin> infinity3: it's all Ruby
[2008/05/07 11:03:40] <infinity3> why might puppet want ot install to usr/local ?
[2008/05/07 11:03:41] <infinity3> error: unpacking of archive failed on file /usr/local/lib/ruby/site_ruby/1.8/puppet: cpio: chown fai
[2008/05/07 11:04:43] <fujin> --prefix?
[2008/05/07 11:04:50] <fujin> what are you using to install? install.rb?
[2008/05/07 11:07:43] <infinity3> i compiled the source rpm
[2008/05/07 11:07:55] <infinity3> rpmbuild -bb puppet.spec
[2008/05/07 11:08:03] <infinity3> and then rpm -i
[2008/05/07 11:09:14] @ Quit: \ask:
[2008/05/07 11:13:36] <infinity3> argh
[2008/05/07 11:13:37] <infinity3> Starting puppet: /usr/sbin/puppetd:160:in `require': No such file to load -- puppet (LoadError) from /usr/sbin/puppetd:160
[2008/05/07 11:13:46] <infinity3> i can't get this thing working on centos4 x86_64
[2008/05/07 11:15:07] @ plathrop joined channel #puppet
[2008/05/07 11:15:09] <infinity3> hm
[2008/05/07 11:16:00] <rizwank> it doesn't know where to find the puppet ruby file?
[2008/05/07 11:16:25] <infinity3> weird. i have a "/usr/lib/site_ruby/1.8/puppet" full of files
[2008/05/07 11:16:30] <infinity3> rizwank: yea
[2008/05/07 11:16:36] <shadoi> infinity3: it's probably got multiple versions of ruby
[2008/05/07 11:16:49] <shadoi> also possible it's looking in a different path
[2008/05/07 11:17:01] <infinity3> shadoi: it might be looking in /usr/local for some dumb reason
[2008/05/07 11:17:04] <shadoi> yeah
[2008/05/07 11:17:08] <infinity3> shadoi: how do it tell it to not?
[2008/05/07 11:17:08] <shadoi> quite often the case
[2008/05/07 11:17:18] <shadoi> remove all the crap in /usr/local.. :)
[2008/05/07 11:17:20] <shadoi> that's what I'd do
[2008/05/07 11:17:27] <infinity3> shadoi: i think some developers installed stuff in usr/local and it always gets in my way
[2008/05/07 11:17:30] <infinity3> shadoi: hmmm
[2008/05/07 11:17:54] <shadoi> file { /usr/local: recurse => true, purge => true }
[2008/05/07 11:17:55] @ rizwank left channel #puppet ()
[2008/05/07 11:17:56] <shadoi> ;)
[2008/05/07 11:18:17] <shadoi> maybe soon that'll be actually feasible too. :)
[2008/05/07 11:18:21] @ Quit: kolla: Read error: 113 (No route to host)
[2008/05/07 11:20:08] <infinity3> i removed everything puppet related from usr/local but there is still soem ruby junk
[2008/05/07 11:21:09] <infinity3> hrmz. which ruby = /usr/local/bin/ruby
[2008/05/07 11:22:49] @ Quit: felix_da_catz: No route to host
[2008/05/07 11:24:36] <infinity3> i removed the local one and it still errors.
[2008/05/07 11:24:37] <infinity3> hah
[2008/05/07 11:25:41] <fastjay> smothered in bacon
[2008/05/07 11:25:44] <fastjay> err um
[2008/05/07 11:25:46] <fastjay> hi kids
[2008/05/07 11:26:01] <fastjay> soo.. i didnt get much of a response for a bay area puppet conf type deal? anyone interested that didnt speak up on the list?
[2008/05/07 11:29:19] <infinity3> strange. this version works http://dag.wieers.com/rpm/packages/puppet/puppet-0.22.4-1.el4.rf.x86_64.rpm
[2008/05/07 11:29:26] <infinity3> but its not .24
[2008/05/07 11:31:11] @ Quit: gh_: "Leaving."
[2008/05/07 11:33:00] @ M- joined channel #puppet
[2008/05/07 11:34:30] <shadoi> fastjay: when did you send it? I haven't seen a post about it
[2008/05/07 11:34:35] <shadoi> fastjay: I'm interested.
[2008/05/07 11:34:38] <shadoi> I'll help out as well.
[2008/05/07 11:35:40] <fujin> Have one in New Zealand, I'll come!
[2008/05/07 11:36:08] @ Quit: andrewcshafer:
[2008/05/07 11:36:28] <fastjay> it was a while ago
[2008/05/07 11:36:48] <fastjay> after the world of work got a little less insane and i had time to put a formal proposal together
[2008/05/07 11:40:57] <shadoi> bbl
[2008/05/07 11:40:59] @ Quit: shadoi: "leaving"
[2008/05/07 11:42:39] @ andrewcshafer joined channel #puppet
[2008/05/07 11:47:53] @ Quit: andrewcshafer:
[2008/05/07 11:48:43] @ felix_da_catz joined channel #puppet
[2008/05/07 11:51:10] @ Quit: plathrop: Remote closed the connection
[2008/05/07 12:02:57] @ Quit: shake-n-bake_: Read error: 110 (Connection timed out)
[2008/05/07 12:09:47] @ plathrop joined channel #puppet
[2008/05/07 12:10:16] @ plathrop is now known as paul-afk
[2008/05/07 12:14:34] @ shake-n-bake joined channel #puppet
[2008/05/07 12:27:04] @ Quit: ricky: Read error: 113 (No route to host)
[2008/05/07 12:28:38] @ ricky joined channel #puppet
[2008/05/07 12:29:11] @ Quit: huangmingyou: Remote closed the connection
[2008/05/07 12:30:53] @ huangmingyou joined channel #puppet
[2008/05/07 12:33:13] @ Quit: felix_da_catz: Connection timed out
[2008/05/07 12:34:22] @ Quit: emerose_:
[2008/05/07 12:44:56] <MrProper_> so i have libshadow-ruby1.8 installed and using: user { "root": ensure => present, allowdupe => false, uid => 0, shell => "/bin/bash", password => 'xxxxxx', require => Package["libshadow-ruby1.8"]} gives me the error:err: Class user does not accept argument(s) password
[2008/05/07 12:50:29] <fujin> weird
[2008/05/07 12:50:30] <fujin> works fine here
[2008/05/07 12:50:37] <fujin> did you install puppet from apt or from Git?
[2008/05/07 12:53:00] <fujin> irb(main):001:0> require 'shadow'
[2008/05/07 12:53:01] <fujin> => true
[2008/05/07 12:53:02] <fujin> ?
[2008/05/07 12:53:19] <fujin> ruby -rshadow -e 'puts :yes'
[2008/05/07 12:55:27] @ Quit: zobbo: Remote closed the connection
[2008/05/07 12:55:41] @ rizwank joined channel #puppet
[2008/05/07 12:55:56] <fujin> holoway: around?
[2008/05/07 12:56:16] @ zobbo joined channel #puppet
[2008/05/07 12:56:24] <hacim> MrProper_: do you have shadow passwords enabled on the system?
[2008/05/07 12:56:27] <rizwank> Quick Question --- If I'm using a template for a config file, how do I replace values in there with my own settings? (I'm looking at the Lab42 example - there's a <%= samba_workgroup %> value, but no idea how to set/replace that value
[2008/05/07 12:56:41] <haci