[00:01] <m_3> portertech: or in a ruby example hook http://paste.ubuntu.com/741757/
[00:01] <m_3> (where charm-tools.rb is in the hooks dir)
[00:01] <portertech> require 'charm-tools' <-- how does this get installed?
[00:02] <portertech> its not part of the standard charm tools is it?
[00:02]  * portertech will bbiab
[00:02] <m_3> no, not yet, it's a file in the /hooks dire
[00:02] <portertech> ah, ok
[00:03] <portertech> looks cool
[00:03] <m_3> still in progress :)
[00:03] <m_3> idioms, best-practices, tools for charms are evolving
[00:03] <m_3> we've let them run rampant for now... consolidating into charm-tools as we can
[00:06] <jcastro> jrgifford: hey are you working on a charm or just helping bruce?
[00:06] <jrgifford> jcastro: both
[00:06] <jrgifford> trying to get rvm to play nice with charms
[00:06] <jrgifford> so we can have a ruby/rails charm that is sane. :P
[00:07]  * jcastro nods
[00:08] <jimbaker> now i know why my desktop has been locking up, somehow my puppy does this by brushing by it just so. maybe fur + static electricity + ...
[00:08] <m_3> jrgifford: do you have a repo to follow on that?  I'd love to see rvm play nicely
[00:08] <jrgifford> m_3: not right now.
[00:08] <jrgifford> but once i'm happy with it, yes, there will be one.
[00:08] <m_3> jrgifford: awesome
[00:08] <jcastro> hey so here's the general ruby bug: https://bugs.launchpad.net/charm/+bug/799879
[00:08] <_mup_> Bug #799879: Charm needed: rails (framework) <developers> <new-charm> <juju Charms Collection:In Progress by mark-mims> < https://launchpad.net/bugs/799879 >
[00:09] <jcastro> do we need another one?
[00:09] <jrgifford> i don't think so
[00:09] <m_3> just tack stuff onto that one
[00:10] <m_3> that charm uses package ruby(s) and then bundler for rails
[00:10] <jrgifford> i marked that as affecting me, and subscribed.
[00:10] <m_3> it'd be great to see that use rvm instead... been on the todo, just lower on the list
[00:11] <jrgifford> i'm hacking railsready to start with...
[00:11] <jimbaker> hazmat, i just saw the bug you posted (bug 891868). i wonder if it would be better if this were done by requesting an agent to run a hook however
[00:11] <_mup_> Bug #891868: juju cli api should be invokable outside of units  <juju:Confirmed> < https://launchpad.net/bugs/891868 >
[00:11] <m_3> feel free to branch and update that at will
[00:11] <jcastro> jrgifford: is there any rails stuff you deploy that you think we should charm up? (thinking ahead)
[00:12] <jrgifford> jcastro: redmine.
[00:12] <m_3> nice
[00:12] <jcastro> oh right
[00:12] <jrgifford> that's about the only thing that people normally do.
[00:12] <jrgifford> other than that, everything would be custom
[00:12] <jcastro> ok I'm going to file a bug on redmine
[00:12] <m_3> tried to make that a config parameter (i.e., repo to pull your app from)
[00:13] <m_3> but that's a lot of work to maintain in a general way
[00:13] <m_3> bundler helps that tons!
[00:13] <m_3> rvm woudl add to it too
[00:13]  * jrgifford gets off IRC to go hack on rvm and charms
[00:13] <jrgifford> if i run into problems, i'll be back. :P
[00:16] <jcastro> <3
[00:18] <jrgifford> jcastro: ok, i
[00:18] <jrgifford> i'm at a point where i can test it
[00:19] <jrgifford> where can i find the command to deploy from the repo?
[00:20] <jcastro> you push it to your branch
[00:20] <jrgifford> ok.
[00:20] <jcastro> and then just run it with --repository <where it is on disk>
[00:20] <jcastro> https://juju.ubuntu.com/Charms
[00:20] <m_3> jrgifford: there's a step-by-step http://paste.ubuntu.com/741778/ too
[00:21] <m_3> it's for another stack of charms, but the basics are the same
[00:22] <jcastro> I found a cool ruby thing I used to use, I filed a bug on it: http://getontracks.org/
[00:22] <jcastro> m_3: we should schedule a charm school in here for next week
[00:22] <jcastro> for the new people from today
[00:23] <m_3> jcastro: they're gonna be finished with their charms over the weekend though!
[00:24] <jrgifford> ok, juju deploy is complaining about too few arguments
[00:24] <m_3> jcastro: wonder if they'll be willing to walk others through the charms they create this weekend?
[00:25] <jcastro> yeah so things like that. Or improving existing charms
[00:25] <jcastro> or, have them review each other's charms
[00:25] <jcastro> jrgifford: what exactly are you typing?
[00:25] <m_3> jrgifford: juju deploy --repository <somedir> local:<charmname>
[00:26] <m_3> (the "local" is a namespace implying the charm's coming from "<somedir>/oneiric" on your filesystem
[00:27] <jrgifford> tried m_3's suggestion and got something different
[00:27] <jrgifford> now i get :
[00:27] <jrgifford> $ juju deploy --repository ~/code/charms/oneiric/ local:rails
[00:27] <jrgifford> Charm 'local:oneiric/rails' not found in repository /home/jrg/code/charms/oneiric
[00:27] <jrgifford> 2011-11-17 19:26:52,573 ERROR Charm 'local:oneiric/rails' not found in repository /home/jrg/code/charms/oneiric
[00:27] <jrgifford> $
[00:28] <m_3> juju deploy --repository ~/code/charms local:rails
[00:28] <jrgifford> oh lord that worked.
[00:28] <m_3> !!
[00:28] <jrgifford> thanks!
[00:28] <m_3> np
[00:29] <jrgifford> ok, so how do i figure out if it compiles successfully?
[00:30] <jrgifford> is there a juju log i can watch?
[00:32] <m_3> juju debug-log
[00:33] <m_3> just 'juju' should give you a list of subcommands... there're lots of useful ones... debug-hooks for instance rocks!
[00:34] <jrgifford> awesome, i'll look into those next
[00:34] <jcastro> yeah debug-hooks is basically awesome
[00:39] <mainerror> Is it a problem if the service I'm trying to create a charm for is not GPL licensed? This is its license. http://github.com/pyrocms/pyrocms/zipball/v1.3.2
[00:41] <mainerror> What I actually mean is does this license just go into the copyright file in my charm?
[00:41] <jcastro> I think so, but I'm not an expert
[00:42] <jcastro> we just talked about licensing this morning
[00:42] <jcastro> SpamapS: ^^^^
[00:42] <m_3> mainerror: short story, yes... it'll just effect the tags your charm gets in the repo
[00:42] <mainerror> Alright. Thanks. :)
[00:43] <jcastro> pyro looks pretty awesome
[00:43] <m_3> mainerror: have to look at the license in detail though... of course if you can't distribute it, we can't add it to the repo
[00:43] <m_3> but you can still charm anything (even binary blobs)
[00:43] <jrgifford> ooooohhh....
[00:44] <jcastro> https://github.com/pyrocms/pyrocms/blob/2.0/develop/LICENSE
[00:44] <jrgifford> so charming is different from packaging in that you can do binaries... interesting...
[00:44] <hazmat> jimbaker, its more the case of either invoking the cli api from a ssh connection or co-located unit, the latter has it own unit agent though.. the general problem is unified api different targets depending on context, default is no context.. documenting how as a faq is sufficient as well, client id isn't justifiable atm (constant)
[00:44] <jcastro> jrgifford: you can do whatever you want, if you have local charms that toss out unholy binary blobs everywhere, then sure.
[00:44] <jrgifford> lol
[00:44] <m_3> jrgifford: yup... and pull from repos if you want
[00:44] <jcastro> jrgifford: though of course we want to start out with awesome OSS stuff for people to build on
[00:45] <jrgifford> naturally
[00:46] <m_3> jrgifford: we'll classify (and tag) charms according to the license for the charm itself and the bits that it includes
[00:46] <m_3> possibly different licenses
[00:46] <jimbaker> hazmat, sounds good if we simply doc this as not valid. i think it made sense in our earlier thinking, but restricting these commands to only run in hooks seems to be the right way imho
[00:46]  * hazmat prefers a cms with presentation tier as management tier
[00:47] <jrgifford> ok, question - does juju deploy as a user with root privs?
[00:47] <jimbaker> but i do think there's a need to trigger hook execution, as i mention in my comment on bug 891868
[00:47] <_mup_> Bug #891868: juju cli api should be invokable outside of units  <juju:Confirmed> < https://launchpad.net/bugs/891868 >
[00:47] <hazmat> jimbaker, i don't see why we want to restrict it, its useful for integrations
[00:48] <hazmat> and the cli api is our juju's api
[00:48] <hazmat> s/our/
[00:48] <m_3> jrgifford: hooks run as root if that's what you're asking... everything on your client runs as a regular user
[00:48] <hazmat> jimbaker, hooks are readily executable
[00:48] <jrgifford> m_3: yes, that was what i was asking. thanks.
[00:48] <hazmat> hook contexts not so much
[00:49] <jimbaker> hazmat, as i understand it, there's some usage out there that basically requires the use of juju set to trigger execution. this seems like an abuse of the mgmt api
[00:49] <hazmat> redefining framework defined hooks for arbitrary usage is questionable imo, it violates any usage/invocation semantics around hooks
[00:49] <jimbaker> don't want to have to do the integration on a clien tmachine
[00:49] <hazmat> jimbaker, custom hooks would be a better way to solve that
[00:50] <hazmat> rather than allowing arbitrary usage association to hooks with well defined semantics
[00:50] <jimbaker> hazmat, agreed
[00:50] <mainerror> m_3: You can distribute it freely if you keep the license file "intact".
[00:50] <jimbaker> so call it "external" or "trigger" or something like that
[00:51] <hazmat> jimbaker, the hook cli api as a universal though seems pretty useful.. it has a well-defined semantic to retrieve information, if the context is not hook specific, then it should default to being usable anywhere.
[00:51] <m_3> mainerror: awesome
[00:51] <hazmat> i don't see security concerns per se, their's still standard unix permissions on the socket (ie root)
[00:53]  * m_3 food
[00:53] <jimbaker> hazmat, so long as we preserve support for ACLs at the ZK level, it's fine with  me
[00:54] <jimbaker> and i guess that is assumed
[00:54] <mainerror> I'm using the Wordpress charm as a reference but I noticed that the "Writing a charm" wiki page differs from the Wordpress charm install script. Basically in the tutorial the hook installs Apache and all necessary packages but the Wordpress charm doesn't. Did that change?
[00:54] <jrgifford> mainerror: i think the wordpress charm installs the dpkg. (not sure though)
[00:55] <george_e> It's charming time! Where do I begin? I have 11.10 32-bit installed in a VM.
[00:55] <mainerror> jrgifford: You mean the wordpress package has the other packages as a dependency?
[00:55] <jrgifford> i think so.
[00:55] <hazmat> jimbaker, indeed. i've been trying to keep an eye for acl issues, the biggest thing is just maintaining the principal hierarchy for unit creation, and not creating too ambiguity around ownership or usage around node paths.. nothings really changed so far,
[00:56] <mainerror> Makes sense.
[00:56] <jrgifford> george_e: here - https://juju.ubuntu.com/Charms
[00:56] <george_e> Thanks.
[00:56] <jrgifford> or, just wait for jcastro  to point you to something even more awesome. :P
[00:57] <jcastro> oh awesome, welcome george_e
[00:57] <george_e> Hello!
[00:57] <george_e> I love the Sphinx-generated documentation.
[00:57] <jcastro> yeah, hot action
[00:57] <jcastro> ok so you need to follow the first part of the docs
[00:58] <jcastro> and set it up for local development
[00:58] <george_e> Okay, I'll start there.
[00:58]  * george_e switches to VM...
[00:59] <SpamapS> mainerror: fyi, that license looks quite free, its close to the PHP license.
[00:59] <jcastro> george_e: http://askubuntu.com/questions/65359/how-do-i-configure-juju-for-local-usage
[00:59] <jcastro> hazmat: you need to steal that and put it in the docs ^ since right now it only has EC2 in there
[01:01]  * george_e waits for packages to install.
[01:01] <jcastro> george_e: the next steps are here: https://juju.ubuntu.com/Charms
[01:01] <jcastro> you can start reading that
[01:01] <george_e> Okay - it will take some time to install everything - my connection is slow and the VM is slow :P
[01:01] <jcastro> and for someone like you, probably just showing you the code is the trick: http://bazaar.launchpad.net/~charmers/charm/oneiric/mediawiki/trunk/files
[01:01] <jcastro> browse that
[01:01] <george_e> Sure.
[01:01] <jcastro> you'll basically do a charm create
[01:02] <jcastro> and modify to your needs.
[01:02] <jcastro> george_e: brunopereira81 and jrgifford are new today too, so we're swimming with new questions etc, so feel free to ask everything
[01:02] <george_e> I will... and it's on-topic to ask charm-creation questions on AU, right?
[01:03] <jrgifford> george_e: yup!
[01:03] <george_e> Maybe when I'm done, this should be another tutorial for 2buntu :)
[01:03] <george_e> (Hey, that's how we got the manpage and makefile tutorial.)
[01:03] <jrgifford> yes please! :D
[01:04] <george_e> We'll see how it goes.
[01:04] <george_e> If things go well, maybe I'll create a charm for JetHTTP
[01:05] <brunopereira81> how do you test if everything is ready to run with your charm?
[01:08] <jcastro> check with with "charm proof"
[01:08] <jcastro> and then just deploy it locally
[01:09] <jcastro> jrgifford: heh, we should start snagging the questions from the past few hours and just put them in the charm tag
[01:09] <jrgifford> hey! free rep! :D
[01:09] <jcastro> until we started the docs seemed complete to me
[01:09] <jrgifford> er, "free" :P
[01:09] <jcastro> now it's like "crap, we're missing a bunch of stuff"
[01:10] <jrgifford> yeah
[01:10] <mainerror> First one is already up. http://askubuntu.com/questions/80323/how-can-i-test-a-juju-charm
[01:11] <mainerror> We are going to hear that one quite often I think.
[01:11] <brunopereira81> I get " W: relation server has no hooks" on charm proof
[01:14] <jrgifford> mainerror: you have two answers. :P
[01:14]  * george_e is still waiting for packages to install...
[01:14]  * george_e twiddles thumbs...
[01:18]  * jrgifford twiddles thumbs with george_e while he waits for his charm to work....
[01:19]  * george_e is watching a whole bunch of Debian certificates get installed...
[01:19] <jrgifford> george_e: you're almost done, that's like the last thing that gets installed
[01:20] <george_e> Yay! Time for rebooting.
[01:21] <george_e> Would a PHP library (used by other apps) be packaged as a charm?
[01:21] <jrgifford> if you can use it, you should charm it. ™
[01:22] <george_e> Lol... I'll add Stack.PHP to my list of charms to create then.
[01:23] <brunopereira81> I get " W: relation server has no hooks" on charm proof, help plz :S
[01:25] <jrgifford> i think we're all looking at it trying to figure out what it means brunopereira81
[01:26] <brunopereira81> when I run "charm proof <path_to_charm_folder>" it returns that error
[01:32] <mainerror> Here is the second question. http://askubuntu.com/questions/80327/charm-proof-issues-a-warning-w-relation-server-has-no-hooks
[01:40] <george_e> Gotta restart here...
[02:02] <m_3> brunopereira81: I'd guess that means that you have a relation specified in metadata.yaml but no hooks defined for that relation
[02:07] <brunopereira81> can you please have a look, im looking at the rest of packages but not seeing what is wrong http://bazaar.launchpad.net/~brunopereira81/+junk/teamspeak/files
[02:16] <m_3> brunopereira81: it's ok... just a warning
[02:17] <m_3> brunopereira81: charm proof requires a relation in metadata.yaml, but there's no need to implement hooks for this particular relation
[02:17] <m_3> brunopereira81: just like minecraft
[02:19] <brunopereira81> I have tried deploying to local I can see the in status that it was deployed but no activity and debug window is empty, how to move from here?
[02:19] <jrgifford> brunopereira81: wait
[02:19] <jrgifford> mine didn't kick in for about 5 minutes
[02:19] <jrgifford> (well, it didn't show up in the logs)
[02:21] <m_3> local can take a _long_ time to come up the first time
[02:21] <m_3> (it's caching an image)
[02:23] <jcastro> (but afterwards it has the debs in a cache so you'll be good to go)
[09:08] <mainerror> m_3: If you want you can answer that server relation warning question AU as well. http://askubuntu.com/questions/80327/charm-proof-issues-a-relation-server-has-no-hooks-warning
[10:58] <fwereade> morning niemeyer
[11:13] <wrtp> morning fwereade
[11:16] <niemeyer> fwereade, wrtp: Mornings!
[11:18] <niemeyer> I'm heading off to bus/airport.. have a fantastic weekend and week folks
[11:20] <fwereade> have fun niemeyer, see you soon
[11:25] <wrtp> niemeyer: dammit! https://codereview.appspot.com/5417045/
[11:25] <wrtp> niemeyer: have a wonderful holiday
[11:26] <niemeyer> wrtp: How amazing! 8)
[11:26] <wrtp> niemeyer: you are my hero
[11:26] <niemeyer> fwereade, wrtp: Will have rudimentary connectivity meanwhile, but no laptops :-)
[11:27] <niemeyer> (should make me more honest ;-)
[11:27] <wrtp> niemeyer: all my net connectivity is through my mobile phone right now
[11:27] <niemeyer> Cheers folks!
[11:27] <wrtp> niemeyer: the cable to the entire street has been broken and then buried 6 feet deep!
[11:28] <wrtp> i was amazed that my mobile bandwidth was sufficient for me to watch a tv programme over it last night
[11:29] <wrtp> fwereade: so there it is - inline comments requested!
[11:29] <fwereade> wrtp, cool, I'll try to get to it soon
[11:29] <fwereade> wrtp, but I've broken something that should be trivial and I'm not quite done banging my head against it
[11:30] <wrtp> fwereade: i hate it when that happens
[11:30] <fwereade> wrtp, for some reason this whole feature has been one of those after another :/
[11:30] <wrtp> fwereade: which feature are you on?
[11:31] <fwereade> wrtp, upstartification of agents
[11:31] <wrtp> fwereade: funny, it *does* seem like that would be fairly independent and not too hard
[11:31] <wrtp> (not that i know anything at all about upstart)
[11:32] <fwereade> wrtp, indeed, there isn't much that's actually difficult in any way
[14:08] <m_3> fwereade: did everybody get out of the lift yesterday?
[14:09] <fwereade> m3, yeah, it was cath alone in there, but there for 45 mins or so :/
[14:09] <m_3> fwereade: sounds like excitement
[14:09] <fwereade> m_3, they came and had a roper look at it today, as nearly as I can tell
[14:09] <fwereade> m_3, yeah :/
[14:10] <m_3> hope there's not too many stairs to deal with for a while :)
[14:15] <fwereade> m_3, heh, 6th floor, was fun taking water up there this morning
[14:15] <fwereade> fixed now though
[14:25] <marcoceppi> Is it preferred to use the deb for an install, or the latest stable from upstream?
[14:59] <m_3> marcoceppi: deb's preferred, just because it's been vetted by security team and tested... but one of the cool features of charms is the option to just use the latest stable from upstream
[14:59] <m_3> marcoceppi: give me enough rope... :)
[15:00] <marcoceppi> heh
[15:17] <jcastro> didn't we decide on a best practice on this?
[15:17] <jcastro> like a config flag to use a package or just pull from upstream?
[15:21] <marcoceppi> That would be easy enough?
[15:21] <jcastro> I could have sworn that's what we talked about at UDS
[15:22] <jcastro> and then by default we use the packaged one
[15:49] <jcastro> brunopereira81_: ok, I can test it
[15:49] <brunopereira81_> https://code.launchpad.net/~brunopereira81/+junk/teamspeak
[15:49] <brunopereira81_> ;) thx
[15:51] <jcastro> can someone help brunopereira81_ figure out what's wrong with his local instance?
[15:51] <jcastro> I'll start testing the charm on my box
[15:52] <jcastro> brunopereira81_: oh, one thing to check
[15:52] <jcastro> try with a known working charm first
[15:53] <brunopereira81_> will do as soon as I have the chance
[15:55] <jcastro> in the dir you specified for it to keep the local stuff in environments.yaml there is a log
[15:55] <jcastro> mine is in: ~/juju/jorge-sample/units/teamspeak-0
[15:56] <jcastro> ok
[15:56] <jcastro> found some errors
[15:56] <jcastro> http://pastebin.ubuntu.com/742363/
[15:56] <brunopereira81_> thats normal :D ill sort it out but havent be able to actually run it till now
[15:57] <jcastro> you want apt-get install -y sqlite3 or whatever
[15:57] <jcastro> so that it just installs it without prompting you for all that other crap
[15:57] <brunopereira81_> and wget is missing aparently
[15:57] <jcastro> heh
[16:00] <brunopereira81_> will fix it tonight (3 - 4 hours from now here) and try to get this running in another computer, after its done I'll let you know, if possible maybe we can do this then. thx!
[16:00] <jcastro> woo
[16:00] <jcastro> we'll be around!
[16:04] <_mup_> Bug #892236 was filed: Don't ship example charms in /usr/share/doc <juju:New> < https://launchpad.net/bugs/892236 >
[16:05] <fwereade> hazmat, do you recall the "restart" Transition in UnitWorkflow?
[16:06] <fwereade> hazmat, because it goes from "stop" to "start", and I naively believe that perhaps it ought to be from "stopped" to "started"
[16:06] <hazmat> fwereade, hmm.
[16:07] <hazmat> indeed
[16:07] <hazmat> ugh.. missing tests
[16:08] <hazmat> fwereade, indeed it should be started to stopped
[16:08] <fwereade> hazmat, heh, I'm just trying to get this all to work, I'll be slathering all my changes in tests as soon as I have something that actually does what I want ;)
[16:08] <fwereade> hazmat, cool, thanks
[16:09] <hazmat> fwereade, for an upstart case and arbitrary process termination.. i don't think we can assume the graph is in any place.. ie. you'll need a started->started transition as well to execute the start hook
[16:09] <hazmat> ie. if the graph is in a non error state then resume
[16:10] <fwereade> hazmat, yeah, I'm taking baby steps still, I kinda want to get everything working in just one case first
[16:10] <fwereade> hazmat, if I try to make everything work before I can handle "just restart the machine" I'll take forever
[16:20] <hazmat> fwereade, fair enough
[16:30] <noodles775> Hi! I'm developing a charm using lxc, and was suprised to receive the following during db-relation-changed (when related to a postgresql service):
[16:30] <noodles775> {u'private-address': u'192.168.122.9', u'host': u'localhost', u'password': u'dRqKZi4xNjCk0*****', u'user': u'apache-django-wsgi', u'database': u'apache-django-wsgi'}
[16:31] <noodles775> The postgresql readme doesn't mention private-address, nor why host would be localhost (even for an lxc container, I assumed it'd be 192.168.122.9 - the IP of the unit?)
[16:40] <_mup_> Bug #892254 was filed: SSHClient does not properly handle txzookeeper connection errors <juju:New> < https://launchpad.net/bugs/892254 >
[16:43] <jimbaker> (i've pulled this bug out because its solution has so far eluded me and while annoying, doesn't actually impact on making a robust connection to ZK)
[18:34] <hazmat> noodles775, private-address is provided by juju automatically
[18:35] <hazmat> noodles775, that version of the postgresql charm isn't able to reliabily resolve the container hostname it seems
[18:51] <m_3> noodles775, hazmat: that charm is still out of date
[18:53] <m_3> I'm updating nfs and varnish at the moment... I'll clean up pgsql next week
[19:29] <m_3> noodles775: please try the latest version and let me know if that resolves correctly in an lxc container
[22:57] <matrix3000> hey guys
[22:57] <matrix3000> juju doesn't need ubuntu-orchestra does it?
[23:02] <raphink> matrix3000: iirc it does for bare-metal deployments