/srv/irclogs.ubuntu.com/2013/04/10/#juju.txt

=== txwikinger2 is now known as txwikinger
=== mbarnett` is now known as mbarnett
=== defunctzombie is now known as defunctzombie_zz
stubCan anyone help with an lxc environment issue? I can bootstrap fine, but 'juju ssh 0' is prompting for a password. I have no problems with openstack.07:05
m_3stub: try `juju ssh posgresql/0` instead... machine-id's a little wonky with the local provider07:41
m_3ok, maybe with a 't' in there :)07:42
m_3just `ssh ubuntu@10.0.3.xxx` should work ok too... just not using the machine-id07:44
stubm_3: So I can't use the unit name, because deploy is leaving the unit stuck in a 'pending' state. juju status isn't giving me an ip address either -         public-address: null07:46
stubSo my guess would be the lxc container's network is borked, except that commands like 'juju status' and 'juju debug-log' are working...07:46
stubhmm.... debug-log showing me nasty encoding failures, and 2.7 python paths. Which leads me to an open bug about lxc using python3 and exploding because juju is python2 and has PYTHONPATH set.07:50
stubSo I think I'm on openstack until that is resolved ;)07:51
m_3stub: yeah, iirc raring lxc is still unhappy with juju07:51
stubSo lemme just set up a precise instance using lxc.... and.... umm....07:51
m_3think the python2/3 issue isn't there in other series (just was working with precise local provider this morning)07:51
stubDoes lxc inside lxc actually work, or does the universe implode?07:52
m_3yikes... haven't tried that one... I do lxc in kvm07:52
m_3actually have a precise ec2 instance spun up where I was working with precise lxc just now07:53
stubYou people with your fast ping times...07:53
m_3in a novotel atm :)07:53
m_3stub: please lemme know if lxc is inceptable07:54
m_3that's probably a big ole rabbit hole though07:55
stubYeah, I don't think I can justify wasting time on it ;)07:55
m_3ack07:55
stubm_3: Do you recall if the PostgreSQL charm always required the database name to be set from the client end? http://jujucharms.com/charms/oneiric/oops-tools/hooks/db-relation-changed seems to expect it to be set by the server08:34
m_3stub: yes, iirc, the sequence is that the postgresql service creates a db w/ creds during relation-joined08:43
m_3then relation-sets that for the other side to you08:43
m_3it creates the db name based on the remove service name08:43
m_3that way multiple units of the same service get the same db08:43
stubm_3: So that would mean there is a bug in http://jujucharms.com/charms/precise/postgresql/hooks/hooks.py around line 1760?08:44
m_3lemme look08:44
stuboic.08:45
stubWhat is the syntax to set the database name from the command line then? juju set ... ?08:45
m_3yes08:45
m_3looking to see if there's a config param for that08:46
m_3there doesn't look to be one08:46
m_3and there shouldn't08:47
m_3whoops, I thought that was working on there08:47
m_3the sequence with a client is:08:47
stubSo my understanding: there is a bug in the postgresql charm. At the moment it aborts if the database name isn't set on the relation. Instead, it is supposed to create a database based on the remote service name and inform the client.08:48
m_3juju deploy postgresql && juju deploy wordpress && juju add-relation wordpress postgresql08:48
m_3yes, that sounds right08:48
m_3so wordpress calls db-relation-joined which should be a no-op08:48
m_3postgresql calls db-relation-joined which creates database named "wordpress" and makes up user creds08:49
m_3does `relation-set` with all that info08:49
m_3wordpress calls db-relation-changed08:49
m_3if postgresql has sent the info, it uses it... otherwise, exits cleanly and waits to be called again08:50
m_3postgresql calls db-relation-changed which should be a no-ip08:50
m_3s/no-ip/no-op/ (that's my dns provider so's in muscle mem)08:51
m_3dang, I didn't realize that's been broken08:51
stubI'm writing my first client charm (so I can write tests) and was wondering why things were odd.08:52
m_3the postgresql's db-relation-joined hook needs to not _create_ a new db if it's already been created... it just sends the auth info back down the pipe08:52
m_3stub: that way multiple client units get the same database within the postgresql service08:53
stubright. Do you want me to fix the charm or do you want to repair it?08:53
m_3so if you want multiple clients talking to _different_ dbs... then the clients should have different service names08:53
m_3juju deploy wordpress blog1 && juju deploy wordpress blog208:53
m_3then when those're related, we'd have two different dbs in pg08:54
m_3stub: It'd probably be better for you to do it08:54
m_3but I'm happy to if you'd rather08:54
stubI'll give it ago. I need it working so my charm client works ;)08:55
m_3thanks... wow, sorry didn't realize in review that that process was borked08:55
stubm_3: I suspect there is a charm somewhere relying on this behavior - specifying the database name to use08:57
m_3oh?  :(08:57
m_3we'll have to have a look at pgbouncer and friends too08:57
m_3hmmm.... wonder if it's worth trying to support either behavior08:58
stubI think we can have both behaviors, although we may end up with a spurious database if postgresql-charm creates a db then client-charm sets the database name08:58
m_3if we moved pg's creation logic into relation-changed08:58
m_3there's a bit of a problem there... ambiguity on what it means when the client is "silent"09:00
m_3does it mean the that client hasn't finished coming up yet?09:00
m_3or that it wants you to pick the db name for it?09:00
stubhttp://jujucharms.com/charms/precise/oops-tools/hooks/db-relation-joined09:00
m_3crap09:01
stubCause there will be several different services needing to share the database.09:01
m_3right... that's still totally cool09:02
m_3based on service_name09:02
m_3new services get new dbs09:02
stubDifferent services with different names needing to share the database (because they need to share data)09:02
m_3oh oh, gotcha09:02
stubIt is either that, or we require messing around with pgbouncer proxies and aliases and that seems more painful.09:03
m_3lemme look at oops... maybe we just need to support both behaviours09:03
stubSo I'll see if I can support both uses.09:03
m_3the kicker is that we'll probably need to make mysql do the same thing09:03
m_3mysql does the 'db decides'09:04
stubNah, mysql is for toy services ;)09:04
m_3haha09:04
m_3well I'm also wondering if we've copied that paradigm for mongodb, cassandra, etc09:04
m_3important to have them consistent09:05
m_3but supporting both behaviors seems worth trying09:05
stubI don't know if mongodb or cassandra have a similar way of partitioning data like PostgreSQL and its separate databases.09:05
m_3see if you can figure out how to differentiate "defaults" -vs- "relation-guard"09:06
m_3yeah, don't know if they create default keyspaces or leave that up to the client09:06
m_3relation-guard is what I call the "is the other side up yet?  go on... otherwise exit0"09:07
m_3remember changed keeps getting called as long as either side keeps doing relation-set09:07
stubRight. So pg's relation-changed and relation-joined are the same. So in this hook, if the database name isn't provided we generate it. If the database doesn't exist, we create it.09:10
stubAnd extra points for cleanup - if we generated a database that is not used by any active relations, nuke it.09:10
stubBut a spurious empty database does no harm really.09:11
m_3we probably need to remove the "joined"09:12
m_3if it's reading anything from the other side, then that's really best done in changed exclusively09:12
m_3joined really should never try to read (it's only fired once)09:12
m_3either making it a no-op in code (exit 0) or just removing the hook (link) is equiv09:14
stubIt needs a -joined hook to generate the default database in case the remote end doesn't want to specify it.09:14
stubSo -joined generates a default database and -changed allows the client to override it.09:14
m_3oh, ack09:14
m_3yeah, that's probably workable... check the same "database" relation var09:15
m_3cool... I'll let you proceed09:15
m_3thanks man... nice catch09:15
m_3stub, m_3: just noting we need test cases for multiple client services _and_ multiple units of the same... using defaults as well as overriding db name09:20
stuback09:21
stubThis schema_user thing seems bogus too. A magic user is created with superpowers on the database, so every client using the charm gets superpowers on the database they connect to destroying any security you bother to set up with the normal user.09:50
mgzjamespage: I want review on mine and Mark's packaging updates to juju, should I just propose my branch for merging into raring? the catch is the history was kinda screwy so the mp diff will... not be useful11:28
jamespagemgz, yeah - thats OK11:29
jamespageor just pass me the branch11:29
mgzjamespage: have done everything and proposed, see lp:~gz/ubuntu/raring/juju/0.7 and mp12:39
=== defunctzombie_zz is now known as defunctzombie
m_3ugh... /me hates userpas12:58
=== salgado is now known as salgado-brb
mgzm_3: ^you probably also want to have a look at that branch, to see if I brought your changes in correctly13:04
jamespagemgz, m_3: some comment/fixes require - I'll doc them in the MP13:04
mgzjamespage: thanks!13:04
m_3jamespage: mgz: cool... hoping there's a better way than sed to get the version from rules into the postinst/prerm files13:09
mgzgah, and these test failures are new to me...13:10
jamespagem_3, ah - right13:10
jamespagethant answers one of my questions13:10
jamespagenot that is not a great way todo it13:10
m_3mgz: yeah, I guess my use of 'DEB_BUILD_OPTIONS=nocheck' is a really bad habit13:11
mgzthis is just something in my env, these ones were passing earlier...13:12
mgznot the most robust suite in the world13:12
m_3ack13:12
=== salgado-brb is now known as salgado
mgzokay, the branch is slightly borked...13:19
jamespagemgz, I had trouble getting the orig.tar.gz as well13:22
mgzgah, quilt, I hate you13:22
jamespagecomments in the MP13:22
jamespagehttps://code.launchpad.net/~gz/ubuntu/raring/juju/0.7/+merge/15808813:22
mgzyeah, the rule for getting the tarball is borked... but it has been forever13:22
mgzand I didn't want to fix13:22
mgzthanks, those comments are useful13:23
m_3jamespage: yup, thanks13:26
jamespagem_3, mgz: if you do want to name the package juju-0.7 then we need to deal with transitions from juju -> juju-0.713:27
m_3the prerm 'rm' might not be necessary with '--compile' in the rules... purge wasn't cleaning out that directory for some reason13:27
m_3jamespage: yeah, I guess I don't understand exactly how an upgrade would happen then... I thought it would remove old and install new, which should be fine with /usr/lib/juju-0.6 and /usr/lib/juju-0.713:31
mgzjamespage: the plan is to add a meta-package I think13:31
jamespagem_3, for the files yes they would get automatically upgraded; but the alternatives will break13:32
mgzpushing a fix for the issue I noticed13:32
jamespageactually forget that - you use a prerm to remove the older version alternatives13:33
jamespageso its OK I think13:33
jamespagem_3: sorry - being dumb13:33
m_3jamespage: dude, I'm just barely caught up on this one... running through upgrade scenarios13:34
jamespagemgz, m_3: did I say to merge the 0.7 changelog entries?13:46
mgzjamespage: nope. I can do that13:52
mgzwas a little confused as to the right thing, with ppas in the mix as well.13:53
jamespagemgz, ignore PPA changelog entries - only distro ones are relevant13:53
m_3jamespage: I assume '$< >' was an accidental autocomplete and not something strange required by dh?13:55
jamespagem_3: thats makefile magic13:56
m_3oh, nm... it's rhs and then redirect to file13:56
m_3doh13:56
jamespage$< is read-in dependency (in this case XX.in) and write out >13:56
m_3right13:56
m_3wasn't expecting the write out... my bad13:57
m_3wht a difference an '-i' makes :)13:58
mgzhave pushed the changelog fix14:00
mgzm_3: are you working on the alternatives changes? you can either base off my branch, or I can pull in your parts when you're ready14:01
m_3mgz: I based off of your branch... pushing them one at a time to ~mark-mims/ubuntu/raring/juju/0.714:02
m_3mgz: figure you can merge them and resubmit your branch14:03
m_3jamespage: mgz: any ideas why this won't purge cleanly unless the 'rm -Rf /usr/lib/python2.7/dist-packages/juju' is there?14:04
jamespagem_3 what error do you get?14:05
m_3take a bit to reproduce, but essentially it was a handful of "won't remove directory because it's not empy"14:05
m_3I sort of assumed it was .pyc files at the time, but that's not nec true14:05
m_3I'm sure it's cause I'm overriding dh_auto_install with14:06
m_3'set -e && python setup.py install --root=debian/juju --install-layout=deb --install-scripts=/usr/lib/juju-$(VER)/bin --compile'14:06
m_3distutils magic that I'm missing by calling it manually14:07
m_3mgz: kicking off pbuilder to test the postinst/prerm changes14:12
m_3mgz: quilt's failing on that zookeeper patch14:20
m_30.6 still debuild's fine though14:21
jamespagemgz, m_3: you guys know about bzr merge-upstream right?14:22
m_3jamespage: um.... no14:22
m_3googling now14:23
m_3:)14:24
m_3I was tarring14:24
mgzjamespage: when the branch isn't horribly broken, yes14:26
jamespagemgz, is the last 0.6 update in the branch good?14:27
mgzit should work for any future upstream merges... but I needed to do some hacks14:27
mgzjamespage: nope. I could have based on the new minor 0.6.1 that I also fixed up, but really that's diverged14:28
m_3mgz: so all changes _other_ than manpages are in... just having problems getting past the borking patch atm14:29
m_3so they're untested14:29
mgzm_3: what is breaking for you exactly atm? we should possibly just add some more test skips for now.14:37
m_3mgz: http://paste.ubuntu.com/5695537/14:39
m_3from `debuild -us -uc -S`14:39
mgz...internal error? let me try that locally. perhaps just refreshing the patch will help.14:41
m_3I'll clear and re-pull14:42
m_3damn that repo's big14:43
mgzI've been using `bzr builddeb -- -nc -us -uc` which works +- failing tests14:44
m_3crap... same thing with just your branch14:46
m_3juju-0.6 does fine though14:46
m_3ok, well lemme try with bzr bd14:46
m_3no love14:54
m_3got a call.. biab14:54
mgzm_3: I get a failure on your branch, but not mine, will see if I can fix14:59
m_3mgz: sorry, I don't relly know what's going on with .pc15:01
m_3I assume it's where it's applying the patches or something15:01
mgzyeah, that's all quilt related15:01
mgzm_3: what I get <http://paste.ubuntu.com/5695604/>15:04
m_3mgz: yikes15:06
mgzm_3: try `quilt pop -a` then `quilt push -a`15:06
m_3mgz: ok, so I've gotta get some other bits into the rules15:07
m_3dang... did the pop and push and it's still failing15:08
mgzm_3: so, with your commit of the .in files and one more fix, I get a build package: lp:~gz/ubuntu/raring/juju/mims15:51
m_3mgz: oh, whew... that error was when the .in files were missing15:52
m_3mgz: good, was scared by that error otherwise15:52
mgzI'll fixup that and put it in my branch. what have we got left, the man pages?15:53
m_3mgz: yeah, I wanted to test the .in changes15:54
m_3mgz: and then figure out how to do the manpages15:54
m_3no clue how to version them for alternatives though15:55
* m_3 can look at java or something15:55
m_3mgz: I was wondering what vim's problem was with the syntax on rules... good catch15:57
=== defunctzombie is now known as defunctzombie_zz
mgzm_3: those fixes are now brought across to lp:~gz/ubuntu/raring/juju/0.715:58
m_3mgz: oh, great... I'll rebase15:59
m_3thanks!15:59
mgz(cherrypicked rather than merged so the fileids stayed the same)15:59
m_3ack16:00
m_3mgz: argh... no love... the new branch is still doing the same thing for me16:08
m_3I give up trying to build it16:09
m_3lemme quit screwing with that and see if I can get manpages versioned16:09
mgzyou can just `rm -rf .pc` if that helps16:12
mgzeasy enough to get back the state with `bzr revert .pc` after if you're not actually touching the patches16:12
m_3still same thing w/o the .pc file /me doesn't know wtf16:18
mgzhm, I wonder if it's actually the dsc that's borked. try removing that and the -nc flag if you're still using it?16:22
m_3yeah, I just cleaned everything up16:23
m_3noted that I had some 0.6 stuff in the higher directory16:23
m_3mgz: hey, should I cut the .pc stuff out of the upstream tarball?16:27
m_3I'm just creating it from the repo directly w/ no changes16:27
mgzit certainly shouldn't be in the upstream tarball16:28
m_3ah... ok16:28
mgzthe upstream tarball is what you get from lp:juju/0.7 and bzr export16:28
* m_3 facepalm... sorry man16:29
mgzit's okay, the tooling for this is slightly borked in the branch as jamespage mentioned earlier...16:30
m_3now that makes sense as to why quilt wasn't happy16:30
m_3it puts patches on _top_ of the upstream tarball16:30
mgzI'll have another quick look at resolving that16:31
=== salgado is now known as salgado-lunch
m_3mgz: whoohooo!16:33
m_3that worked16:33
m_3ok, wife's waiting on me for dinner... I'll test out alternatives chagnes, figure out how to get manpages in16:33
m_3have a branch for you in the morning?16:34
imbrandon_robbiew: arnt you in Austin? I hear its the next city to get Google Fiber ;)16:34
robbiewyeeeeeep!16:34
mgzm_3: sounds great16:34
m_3mgz: might be able to get it sooner... lemme see how long dinner goes16:34
m_3whew16:35
m_3now I can build again :)16:35
m_3ok, I'm out for abit16:35
imbrandon_robbiew: I'm telling ya now, goto the http://google.com/fiber page and put your address in for pre-registration , you'll be glad you did … it filled here FAST16:35
imbrandon_heh16:36
imbrandon_robbiew: yup, here is the exact link, and Austin is now listed … https://fiber.google.com/cities/#header=check16:37
=== defunctzombie_zz is now known as defunctzombie
robbiewimbrandon_: already did16:38
imbrandon_:)16:38
mgzm_3: fixed the get-orig-source rule16:40
=== defunctzombie is now known as defunctzombie_zz
mattgriffinjcastro, arosales: i've got some questions about the Charm Store but need to get off of the hangout and run to lunch. i'll ping you later today. thanks!16:52
jcastrook16:52
arosalesmattgriffin: ok, thanks for joining us.16:53
=== defunctzombie_zz is now known as defunctzombie
=== salgado-lunch is now known as salgado
niemeyer% juju publish cs:~niemeyer/precise/build-mongo17:36
niemeyercs:~niemeyer/precise/build-mongo-017:36
niemeyer!17:36
=== BradCrittenden is now known as bac
arosalesjcastro: thanks for sending out the charm meeting minutes, nice summary19:00
jcastroyeah it turned out not as crappy as I thought19:02
jcastroI'll make them more interesting once I get used to it19:03
jadamsanyone here played with the openstack packages?  I'm a bit confused on the 'quantum' networking stuff19:52
=== defunctzombie is now known as defunctzombie_zz
=== defunctzombie_zz is now known as defunctzombie
=== defunctzombie is now known as defunctzombie_zz
=== defunctzombie_zz is now known as defunctzombie
=== defunctzombie is now known as defunctzombie_zz
=== defunctzombie_zz is now known as defunctzombie
mattgriffinjcastro, arosales: ping … got some questions about the Charm Store. have a sec?21:10
arosalesmattgriffin: hello, sure21:36
arosalesmattgriffin: sorry the delayed response. I was grabbing some lunch.21:37
mattgriffinarosales: np. are there any plans to support some kind of a feedback loop for Charms usage - either quantitative or qualitative - back to the author?21:41
arosalesmattgriffin: besides a bug report a method for continuos feedback21:42
arosalesmattgriffin: there is https://juju.ubuntu.com/docs/charm-quality.html that we are working on "rating" for each charm21:43
arosalesbut that isn't really continuous feedback, and mostly from the LP charmers group and not from users.21:43
arosalesmattgriffin: aside from bugs were you thinking of comments on the charm page, or a forum, or something else?21:44
arosalesmattgriffin: also the metadata.yaml does have the authors contact info, at least for charms that have maintainers . . .21:45
arosalesmattgriffin: in terms of quantitative feedback we are also working on display the charm "usage" or download statistics from the charm store.21:45
mattgriffinarosales: yeah… feedback could be interest measured by downloads (not really possible), ratings from Charm Store managers (your link), +1's/likes by users, qualitative feedback/praise/reviews by users, and an easy way to submit bugs21:46
mattgriffinarosales: so the purpose would be to help Charm browsers make better decisions and also help Charm authors with feedback on interest in their Charm and ideas to make it better21:47
mattgriffinarosales: ah… download stats … very interesting21:48
mattgriffinarosales: when might the quantitative feedback measures be available?21:50
mattgriffinarosales: stats i mean21:50
arosalesmattgriffin: hopefully by 13.04, so soon21:51
arosalesmattgriffin: I like your ideas on feedback21:51
arosalesshows in the charm page21:51
arosaleswhat ways did you envision, "feedback/praise/reviews by users"21:51
arosalescomments? forums?21:51
arosaless/shows/shown/21:52
mattgriffinarosales: yeah. something similar to consumer app store feedback - short and sweet … and maybe easily tweet.21:52
arosalesmattgriffin: ya so we need some more social networking integration into the charm page.21:53
mattgriffinarosales: perhaps be able to leverage some of the reviews infrastructure (or learnings) from USC21:53
* arosales makes note for a blueprint for "adding social networking to Charm Store charm pages."21:54
arosalesmattgriffin: good point on USC21:54
arosalesmattgriffin: aside from download stats any other quantitative information you would be interested in?21:56
* mattgriffin thinks21:57
mattgriffinarosales: some indication of the age or update frequency might be helpful in selecting a charm… i don't know … might be reaching on that one21:59
arosalesmattgriffin: perhaps recent commits, and age in the charm store22:00
mattgriffinarosales: :) cool22:02
arosalesmattgriffin: just some ideas on information that is there, but may be interesting to users . .22:07
arosalesmattgriffin: good stuff, I think there is some good ideas there for a blueprint.22:07
mattgriffin:)22:09
arosalesmattgriffin: please add any ideas that come up into  https://blueprints.launchpad.net/ubuntu/+spec/servercloud-1305-juju-charmstore-feedback-loops22:25
arosalesmattgriffin: be good to see virtually see you at http://summit.ubuntu.com/uds-1305/ too22:26
mattgriffinarosales: cool. will do23:48

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!