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

=== defunctzombie is now known as defunctzombie_zz
orospakrhey, can I ask juju to shrink the number of machines if they are not being used as any service units?00:21
orospakror do I just have to manually use destroy-machine?00:21
sidneiorospakr: you have to do it manually00:40
orospakrfair enough.00:40
orospakrtx. :)00:41
marcoceppiorospakr: terminate-machine for reference :) Juju will try to make sure it saves your data as best as possible!00:45
orospakriirc terminate-machine and destroy-machine are aliases?00:45
sidneistub: https://bugs.launchpad.net/charms/+source/postgresql/+bug/1172086 when you get around01:09
_mup_Bug #1172086: Database creation fails with syntax error <postgresql (Juju Charms Collection):New> <https://launchpad.net/bugs/1172086>01:09
stubIndentation wars are starting01:17
sidneihe01:26
sidneisome of it i could have left alone but flake8 is really picky01:26
sidneii see that in create_user it uses  action.append('"{}"'.format(user))01:32
sidneibut maybe the right way to do it is to sanitize the database name like the username is sanitized01:33
=== defunctzombie_zz is now known as defunctzombie
sidneistub: any suggestion?01:43
stubsidnei: just added comments01:44
stubsidnei: I've linked code to do the quoting correctly. Sanitizing is good too, because if we create things like databases or roles with names requiring the quotes it causes headaches01:46
sidneigreat, thanks!01:46
stubBecause nobody ever remembers to add the quotes, and you are left scratching your head because the tablename is in mixed case and without the quotes it gets munged by the SQL parser01:47
stubCREATE TABLE "Foo" (a text); SELECT * FROM Foo; -- Fail01:48
stubsidnei: I'm torn. I'd normally recommend sanitizing the database name to avoid the quoting foot gun. Even if you write good code that always quotes the identifiers correctly, not every tool you might want to use is good code.01:52
stubsidnei: But that creates namespace issues, and annoys people who want to shoot themselves in the foot.01:53
sidneiin the specific case (-joined hook) where the database name comes from the service name, i believe it makes sense to sanitize01:56
sidneinot sure if it should be also sanitized in the -changed hook for consistency or left alone for the shoot-themselves-in-the-foot crowd01:57
sidneialso, can't decide if im annoyed that "SELECT datname FROM pg_database WHERE datname = %s" doesn't complain about the single quote01:59
mwhudsonsidnei: you do know the difference between single and double quotes in sql, right?02:02
sidneiis it the same difference as in shell scripts? *wink*02:02
mwhudsonno :)02:02
mwhudsonsingle quotes are string literals02:02
mwhudsondouble quotes are for identifiers02:03
sidneithe distinction is a bit blurry, i guess. but it makes more sense now.02:04
sidneistub: in the create role, does the password need to be quoted too?02:21
stubsidnei: The password is not an SQL identifier, just a string, so needs standard single quoting02:23
stubsidnei: yay SQL standards committee02:23
sidneistub: http://paste.ubuntu.com/5597272/02:24
stubI'm sure there is a reason. Maybe parser implementation. Maybe LSD.02:24
stubsidnei: that looks fine02:26
stubI should submit quote_identifier to psycopg2 to add as an extension02:28
sidneiprogress. and fail. and progress and fail. http://paste.ubuntu.com/5597289/02:31
stubyay. guess the publication of the names needs to be moved then.02:33
stubOr dump AsIs and do the interpolation yourself, safe with quote_identifier.02:34
sidneistub: is that related to the error above? if so im confused ;)02:35
stubThere is so much of this sort of cruft... branches get scope creep.02:35
stubsidnei: Yes. I suspect you will find we are now calling 'relation-set user="foo"' instead of 'relation-set user=foo'02:36
stubAssuming it was working before this change ;)02:36
sidneistub: nope, im using quote_identifier inside create_user(), so it doesn't leak the quoting outside to db_relation_joined_changed which is what calls relation-set02:37
stubmmm...02:38
sidneistub: the error here is that relation-get didn't return a user for a relation02:38
stubThere might be race conditions in the hook logic still02:38
sidneimaybe because it wasn't flushed yet, or something02:38
stubone end trying to get the username before the remote end set it. Needs a guard.02:38
sidneisomething like that yes02:39
stubMy functional tests are on hold until I'm back from leave.02:39
sidneibut also, we just created the user above, why not pass it to generate_postgresql_hba directly instead of getting it from relation-get?02:39
stubsidnei: Probably no reason at all02:42
stubsidnei: except I've been trying to limit my diff sizes - too tempting to just rewrite the whole thing in one hit.02:43
sidneii'll hack it until it works (tm) then let's see about splitting this diff02:44
stubsidnei: I've been promising myself to just make minimal changes until I've got some sort of test harness02:44
stubhttp://bazaar.launchpad.net/~stub/charms/precise/postgresql/tests/view/head:/test.py02:46
sidneistub: ah, nice. i'll see about adding some unit-y tests instead.02:47
=== defunctzombie is now known as defunctzombie_zz
mwhudsonhm03:12
mwhudsonjuju bootstrap (pointed at a maas install) fails with "error: no tools available"03:13
mwhudsonany ideas?03:13
sidneimwhudson: being really nosy, i saw mention of using --upload-tools to fix that03:17
sidneino idea if it actually fixes the problem03:18
mwhudsonhm03:18
mwhudsonsidnei: thanks, that just gets me stuff like03:18
mwhudson2013/04/24 04:18:39 ERROR command failed: build command "go" failed: exit status 1; can't load package: package launchpad.net/juju-core/cmd/jujud: import "launchpad.net/juju-core/cmd/jujud": cannot find package03:18
mwhudsondo i need to go install a bunch of things?03:19
mwhudsonor whatever the command is03:19
sidneisorry, haven't got to that part yet.03:19
mwhudson"Ahh, yes, --upload-tools is a developer flag, it won't work unless you have built juju from source."03:19
mwhudsoni guess i'm going to give up on this until some more devs are around03:20
AskUbuntujuju with openstack on precise | http://askubuntu.com/q/28484607:11
=== rbasak-test is now known as rbasak
marcoceppijcastro: the first of the gojuju related problems are coming in to AU now11:45
jcastroexcellent. :)12:55
=== defunctzombie_zz is now known as defunctzombie
orospakrhow do I ask juju debug-log to give me more lines of tail?13:23
orospakr(I'm running -core, if that matters)13:23
jcastrohey mgz13:50
=== wedgwood_away is now known as wedgwood
mgzhey jcastro13:54
jcastrohey so for the packages13:55
jcastrocan you explain how that will work?13:55
jcastrolike, apt-get install juju does both python and go with an alternative or what?13:55
mgzapt-get install juju will install python juju13:58
mgzbut, you can install juju-core, and that also provides the juju binaries and so on13:59
mgzso, if you just install that, go juju is what you get when you run juju13:59
mgzinstall both and you can pick which you want under the juju name with alternatives, or run under the juju-0.7 and juju-core names14:00
jamespagemgz, gah :14:03
jamespagesrc/launchpad.net$ find . -size +100014:03
jamespage./juju-core/cmd/juju/juju14:03
jamespage9.8MB14:05
jamespageooops14:05
mgzthis is.. not unusual14:05
mgzyeah, it's painful14:05
mgzbut at least it's only *one* 10MB binary rather than three these days14:05
jamespagemgz, yep - can we get that cut from the tar.gz please14:06
mgzwait, the binary is *in* the tar?14:06
mgzgah14:06
mgzokay, I'll start from scratch on that, also omitting the junk we don't need14:07
mgzbut could really do with some confirmation on exactly what we're trying to ship from someone else14:07
mgzfwereade: we don't need lbox for juju-core, right?14:08
fwereademgz, we shouldn't no14:08
jamespagegreat - that solves one problem!14:08
mgzwe do need, from code.google.com/p/go.net and mgo from labix.org14:10
mgzthen of...14:10
mgzgo/src/launchpad.net/:14:10
mgzgnuflag  gocheck   gomaasapi  goyaml lbox  tomb14:10
mgzgoamz goetveld  goose      juju-core  lpad14:10
mgzwe want everything but lpad and lbox?14:11
mgz...and not goetveld14:12
marcoceppiI've got some jitsu questions14:14
marcoceppiCan jitsu watch for a machine-state in addition to agent-state?14:15
jcastromgz: seen this before? http://askubuntu.com/questions/284846/juju-doesnt-bootstrap-due-to-error-command-failed-no-tools-available-error14:16
m_3marcoceppi: don't remember, but `jitsu watch -h` is pretty verbose14:18
marcoceppim_3: yeah, doesn't appear so14:19
fwereadejcastro, that indicates that we need to upload the new tools to the juju-dist bucket14:20
fwereademgz, AIUI you have the keys necessary to do so?14:21
jcastrofwereade: ok14:22
ahasenackjcastro: that was happening to me too a few times this week, they said it was "broken on purpose until the right fix lands"14:23
fwereademgz, pretty sure that's correct -- if you want to be really really sure move your src out of the way and go get juju-core into a fresh src/ again ;)14:23
jcastroahasenack: so if we redeploy over and over will it eventually work?14:23
jcastroalso does anyone have a bug report handy?14:24
mgzI do, when we have something built (I could upload from the ppa for now... but would prefer not to)14:24
fwereademgz, ah, what's the problem with the ppa?14:24
fwereademgz, just not the same in actuality even if it is in theory?14:24
jcastrothis guy would be using juju from the PPA no?14:25
ahasenackjcastro: I don't know, I haven't tried today14:27
mgzfwereade: no problem, just doing the stuff we need for the archive has to happen like, now14:31
fwereademgz, ah, ok: yes, I agree that it takes precedence14:31
jcastrofwereade: ok so I can just tell the guy to sit tight for a bit until we sort ourselves?14:34
fwereadejcastro, I'm afraid that's the best we can do right now14:35
jcastrono worries, I prefer to tell people to wait than be silent, heh.14:35
jcastroman, I wasn't expecting people to be playing with juju on openstack so soon after ODS.14:39
jcastroarosales: ok so there's no way to record a meeting from the G+ URL in the calendar invite14:46
jcastroso I am going to try launching the hangout early and updating the link on the invitation14:46
jcastroif that ends up not working I'll ask you to send everyone from the hangout to the new URL so we can record the charm meeting14:46
arosalesjcastro, I looked at this last week.14:59
arosalesjcastro, what the person launching the G+ has to "check box" hangout on air14:59
arosalesjcastro, from I can see that can't be done via google cal invite14:59
arosalesjcastro, what you can do is fire up a indiv hangout, check box on air, and then capture the embedded link15:00
arosalesjcastro, only question if that persists week to week15:00
jcastroright15:01
jcastroI think what I will do is fire it up early, and see if I can replace the existing link in the invite with the new one15:02
jcastroso people get the updated URL in the invite15:02
marcoceppijcastro: I wonder if you can find a URL variable that you can overload the hangout link to force it to be on-air15:18
arosalesjcastro, sounds good lets see if it works.  I am sure it will work this week, I am just not sure if it will persist week-to-week. But good experiment to find out.15:20
jcastronod15:21
jcastroOK everyone15:50
jcastrohere's the hangout URL for the charm call in 10 minutes:15:51
jcastrohttps://plus.google.com/hangouts/_/ca6e8841c9aed5e51daf941607b9613f93bd0261?authuser=0&hl=en15:51
=== defunctzombie is now known as defunctzombie_zz
jamespagejcastro, charmers hangout?15:54
jcastroweekly call15:54
jcastrowe're just recording them now so we can make them public, etc.15:55
marcoceppijcastro: may be a few mins late. About to reboot15:58
jcastrono worries15:58
m_3arosales: how do you get that banner on the bottom16:18
m_3it's perdy16:18
marcoceppim_3: "hangout tools" on the left16:18
arosalesm_3, add the hangout tool box16:18
arosalesm_3, http://pad.ubuntu.com/Q01gbDLLfh16:19
=== _mup__ is now known as _mup_
arosalesm_3, ubuntu orange is able.virginmedia.com) has joined #juju16:20
arosales* eschnou has quit (Quit: Leaving)16:20
arosaleswrong paste16:20
arosalesdd4814 is the ubuntu orange16:20
arosalesm_3, http://newraycom.com/how-to-set-up-google-hangout-lower-third/16:21
m_3arosales: thanks16:21
arosalessorry about my clipboard buffer being defunc16:21
jcastroaha16:37
jcastroarosales: for next time I'll add a pad.u.c to the invite, so we don't split brain again16:38
arosalesjcastro, ok thanks. Sorry for not thinking of that earlier16:38
jcastroit's ok, first one's always rough16:39
jcastroor second16:39
jcastroor third. :)16:39
marcoceppijcastro: FYI for the notes: https://jenkins.qa.ubuntu.com/view/Precise/view/Precise%20Charms/16:40
jcastrogot it!16:43
marcoceppiit takes about 3 years to load, but it has all the tests so far16:45
m_3marcoceppi: we might need to get james or somebody to create other/better views in there16:47
marcoceppim_3: yeah, there is a Charms view, but it doesn't have openstack16:47
m_3marcoceppi: those're custom views... created by somebody with auth into j.q.u.c16:54
* m_3 doesn't know how to do it16:54
=== cmagina_away is now known as cmagina
=== gianr_ is now known as gianr
=== medberry is now known as med_
imsplitbitI wonder if anyone here has experience connecting juju with rackspace cloud19:30
imsplitbithttps://juju.ubuntu.com/get-started/rackspace/19:31
imsplitbitif you look there it says "heres an example configuration..." but theres no example :-)19:31
imsplitbitI tried using the openstack_s3 provider as some google searches said to do but it fails because the api returns a 404 for os-security-groups19:32
imsplitbitnot sure if thats a bug or if there's some special things you need to do with rackspace to make it all go19:32
=== bac_ is now known as bac
marcoceppiimsplitbit: rackspace provider does not work as they have a non standard open stack. they're changing this soon which will fox this problem in juju20:07
marcoceppinot sure an eta... jcastro ?20:08
rshade98I keep getting no matching tools on amazon.20:13
rshade98Is there a package I need to upload to s320:13
jcastrothey said "soon" and wouldn't really commit to anything20:17
marcoceppirshade98: see this: http://askubuntu.com/q/284846/4120:25
rshade98oh, haha, sorry for the ask guys, I saw this, just didn't realize it was 5 hours ago20:28
marcoceppirshade98: NP, still a bit of a new issue :)20:30
jcastrorshade98: that's inprogress20:38
jcastrothe fix for that20:38
jcastromgz: you still around doing distro things or will we likely see this fix tomorrowish?20:38
rshade98thanks guys20:43
mgzI'll sort it out tonight20:50
mgzjcastro: ^20:50
jcastro<3 thanks dude20:51
mgzokay, tools in the ec2 public bucket for the ppa21:03
mgzI don't have credentials for any of the other ones21:03
mgzalso need to do a release announcement...21:04
mgzwell, four release announcements now21:04
jcastroheh21:09
jcastrorshade98: wanna give it a shot now?21:09
rshade98looks good21:25
jcastrook so it worked?21:26
=== wedgwood is now known as wedgwood_away
=== Makyo is now known as Makyo|out

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