/srv/irclogs.ubuntu.com/2013/04/05/#juju-gui.txt

MakyoFiiiiinally unbrincked the tablet.01:49
Makyoer.. unbricked01:49
rick_h_Makyo: yay01:52
MakyoOf course, now it's running Android, so...lets hope the next flash doesn't do the same :o)01:52
MakyoI gained a nose, apparently.01:52
rick_h_any time you see a UI it's a good thing01:53
MakyoYeah, seriously.  Anything but just plain black D:01:53
rick_h_sometimes having to go through POST and Grub is comforting stuff :)01:53
MakyoYeah.01:53
MakyoThe Dell Optiplex series was good for that, because if it didn't even make it to beep codes, it couldn't turn the fan speed down, so the thing would just rev the fan to top speed until the thing sounded like it would fly away.01:54
MakyoGood because none of them were mine, I guess.01:54
MakyoEnough computer.  Until tomorrow o/01:55
rick_h_party on01:55
frankbanhi rogpeppe: am I right assuming that the relation id is created in this way? -> "[requirer service name]:[requirer Relation.Name] [provider service name]:[provider Relation.Name]"10:49
rogpeppefrankban: that sounds right, yes.10:50
rogpeppefrankban: check out the relationKey function in state/relation.go for the definitive answer. the ordering is defined in epSlice.Less in endpoint.go10:51
frankbanrogpeppe: cool, thanks. IC, roleOrder  ah! any idea about reintroducing the status in the unitInfo?10:54
rogpeppefrankban: it's happening, although delayed because i've been trying to diagnose a runtime bug.10:55
frankbanrogpeppe: great, thanks10:55
frankbanrogpeppe: anyway, nice change re relation key, much better than "relation-000000X".10:56
BradCrittendenguihelp: does anyone understand this card "Expose service config information via Go API"13:05
=== BradCrittenden is now known as bac
bacit looks surprisingly like 'juju get svc' but that command is already in the Go API13:06
bacand there is no corresponding bug13:06
teknicobac, the card description seems very clear13:07
teknicobac, totally white, actually ;-)13:07
bacteknico: you're very helpful, as usual.  :)13:09
teknicoain't I? ;-)13:09
bacbenji: i see you created that card.  got any extra info?13:11
benjibac: I haven't looked at it much yet.  It either needs to be an RPC call or a  new watcher13:13
benjiI've been up sick all night so I'm afraid I'm not going to be around today.13:13
bacbenji: but how does it differ from 'get'?13:13
bacbenji: oh, ok.  sorry you aren't well13:13
frankbanbac: could you please take a look at https://codereview.appspot.com/8406044 ?13:23
rick_h_anyone up for a looking over a bunch of html/css :) https://codereview.appspot.com/8412043/13:28
bacfrankban: sure13:45
frankbanbac: thanks13:45
bacbenji: if you aren't going to be around today do you want to hand off the GUI card you've got?  i'd be glad to run with it13:47
hatchmorning14:00
bacfrankban: i'm looking but this code is unfamiliar so i'm going slow14:04
bachi hatch14:04
* hatch is frustrated with this code14:05
frankbanbac: yes, that's a new module, we can make a call if you want to.14:05
bacthanks but not yet needed14:06
bacfrankban: why did instance_state go away?  is that unrelated to this branch?14:16
frankbanbac: because, AFAIK, it is unused, it is not included either by the pydelta or juju-core delta, and it generates confusion. I discussed this with Benji and we decided to just get rid of that attribute14:18
bacfrankban: ok, cool.14:19
bacfrankban: reviewed14:19
frankbanbac: great, thanks14:20
Makyojujugui call in 214:58
bcsallerafter the call a review of https://codereview.appspot.com/8358045/ will clear 4 cards15:01
Makyorick_h_, jovan2 luca__  call in guichat15:02
hatchrick_h_: I think at one point yuidoc required the leading *15:31
hatchthat's why most of their code has that15:31
rick_h_hatch: yea, and those files i linked the one without the * ends with **/15:32
rick_h_hatch: I just went to look at their code saying if we're going to convention-ize and do what YUI does (camel var) might as well check and noticed they don't agree eitehr15:32
hatchI used to do the * preceeding but got lazy and thats when I stopped :D15:32
hatchlol15:32
rick_h_editor does it for me, I'm lazy15:32
rick_h_just trained my dog well :)15:32
hatchhaha - right now switching between osx/ubuntu multiple times in the day is killing my finger memory15:34
hatchunfortunately I have to pay to get my garage roof redone so no new laptop for me15:34
hatch:/15:34
MakyoBooo15:37
hatchyeah it's $3500 and I worked it out to be about $2000 in materials15:38
hatchit'll take 3 pro's 2 full days to do all the work so I figured it would take me 2 full weeks15:38
hatchlol15:38
hatchhome ownership....pffffft15:39
MakyoHaha, yeah15:39
MakyoPrefer blog post or email for the meeting summary?15:40
hatchemail15:40
hatchbcsaller: the relation response object includes a relation id, interface, and scope - any idea how these are defined?15:51
bcsallerhatch: let me see if I can find you a good reference 15:51
hatchthanks15:51
hatchI notice the relation model has them15:52
bcsallerhatch: https://juju.ubuntu.com/docs/charm.html is a good place to start (relation section), the relation ident was added later and just exposes a unique id for the relation 15:53
hatchalright thanks15:53
bcsallerhatch: if you need more info let me know15:53
hatchbcsaller: is there any objection to me storing the charm data in the service model?16:51
hatchto build out the relation response I need the information under 'requires' in the charm16:51
bcsallerhatch: we have the charm for the metadata and the relation object holds the endpoints16:51
bcsalleryou don't need to change the models as they already satisfy the use case with real jujus16:52
hatchgot a sec for a guichat?16:53
bcsallerI think what we'll need are a few helper methods in fakebackend to assemble this and make the checks16:53
bcsallerI do16:53
frankbanbye all, have a nice weekend!17:08
hatchcya frankban17:12
hatchyou too17:12
hatchbcsaller: in this charm json data I don't see anything specifying weather it is a slave client or peet17:34
hatchper17:34
hatchpeer17:34
hatchany idea how that is determined?17:34
bcsallerhatch: http://jujucharms.com/charms/precise/mysql/json look at provides and requires, those are translated to server and client respectively 17:35
hatchahh that's what I was thinking but wasn't sure17:35
hatchthx17:35
bcsallerhttp://jujucharms.com/charms/precise/wordpress/json is a better example17:36
bcsallerpeer is a much less common relationship type17:36
hatchahh ok, so a charm can't provide and require?17:38
hatchor it can17:38
hatchnm17:38
hatchI spoke too soon :)17:38
hatchdo we have an accepted style to pre-hoist fn's in javascript or can we leave them close to where they are used?17:49
hatch^ jujugui17:49
bcsallerIf I understandd what you mean I leave them close till something else needs them, then into a util module17:49
hatchsounds like a plan17:50
hatchbcsaller: ok one more :) relation_id is this some arbitrary id for the relation?17:58
bcsallerhatch: yes, its a unique id17:59
hatch(Y)17:59
bcsallerhooks sometimes need to be able to know specifically what they are interacting with 18:00
bcsallerwe can just use a monotonically increasing number18:00
hatchthis.db.relations.size() + 118:01
hatchok?18:01
hatchaxe that I'll make it 0 indexed18:01
hatchthis.db.relations.size()18:01
hatch:)18:01
bcsallerhatch: not size, things could be removed and the number could be reused18:02
hatchoh right18:02
bcsallernot that it would break anything with fakebackend, but still :)18:03
hatchthis relation code started out being so simple....then you informed me of all the work it actually has to do :P18:06
Makyoignorance === bliss18:35
bacguihelp: frankban file bug 1164593 saying that double clicking on a service just brought up a "loading" message and nothing more.  i cannot reproduce.  has anyone else seen this behavior?18:38
_mup_Bug #1164593: GUI hangs on the service detail view <juju-gui:In Progress by bac> < https://launchpad.net/bugs/1164593 >18:38
hatchbac: I wasn't able to reproduce that either18:38
hatchsorry I forgot to mention on the ticket18:38
bachatch: ok, i'll make a note and use your name in vain18:38
bcsallerbac: I suspect you already fixed it with the endpoint map fix, I think it was dying in process before 18:39
bacbcsaller: ah, more good ammo18:39
bacinvalidized18:40
hatchbcsaller: got a few minutes to take a peek at https://code.launchpad.net/~hatch/juju-gui/add-relation and let me know if I'm missing anything for the typical client/server relationship18:51
bcsallerhatch: taking a peek, then lunch18:51
hatchthanks18:51
hatchthen I'll need you to fill me in this subordinate stuff18:52
hatchafter lunch is fine :)18:52
hatchI also could use some lunch18:52
bcsallerhatch: 531 needs a ===, 536, strange way to us if/else 571, relation_id is usually something like "rel:"+ct or similar, have to check that one, then you need to push the relation object into the fakebackend change list or it won't appear in the delta18:56
bcsallermini-review18:56
hatchthanks!18:56
bcsalleralso, check for authenticated at start of method18:57
* bcsaller heads to lunch18:57
hatchbcsaller: 531: done, 536: that was copied from the endpoint.py, 571: relation- is the prefix used right now19:03
hatchnow I'm lunching :)19:03
hatchbcsaller: you're just saying `this.changes.relations.push(relation);` there is no extra stuff that might not be as obvious that is required to add to the list?19:34
bcsallerhatch: its a map, not an array and it take an additional argument of true to indicate its a update/add19:53
hatchok is this documented anywhere?19:53
bcsallerhatch: another question is do you need to push the two services into their change set as well. 19:53
hatchI don't know - I didn't even know about this change list until you said it19:54
hatchso I haven't done it for any of the other stuff I've done19:54
bcsallerhatch: this is all new code, but _resetChanges, nextChanges implement it. addUnit shows an example 19:55
bcsallerpretty much self contained 19:55
hatchoh ok so we don't actually use this delta stuff yet19:56
hatchalright it's been added this.changes.relations[relationId] = [relation, true];19:59
bcsallerhatch: we do, sandbox.sendDelta consumes this20:06
hatchahh ok - and what is this used for on the client?20:06
hatchor are these the ws updates?20:06
bcsallerthis is as though improv were recoding changes in a list to send a batch to the client.20:07
hatchgotcha20:07
bcsallerso yes, this whole thing is talking over the ws channel and that part arranges the delta updates20:07
hatchyou know you have a serious syntax error when the linter crashes20:14
hatch:D20:14
hatchoh poo20:24
hatchcrud I did this all wrong20:39
hatch:/20:39
hatchok not 'all' wrong, just have to shift some stuff around20:39
hatchbcsaller: are you still kickin around?21:23
bcsallerhatch: yeah, plenty of time left21:24
hatchoh right...ok21:24
hatchso I kind of screwed up and was passing too much information to the fakebackend21:24
hatchin reality all that's passed back is "wordpress:db" and "mysql:db"21:24
bcsallerahh, that makes sense, then it does the resolution from the metadata21:25
hatchso from there I can pull the charm - I can then parse the charms to see which is the client and which is the server21:25
hatchmy question is....can a charm be both a client and a server to eachother21:25
hatchso could they both be in eachothers provides and requires21:25
bcsallerhatch: yes, it could... rare though, don't think about it in terms of the charm though, only endpoint matches21:26
bcsallerif the endpoints match then its allowed21:26
hatchok so as long as they are both 'db' or whatever then it's ok?21:26
bcsalleras long as they implement the other side of the expected endpoint21:27
hatchso then I would parse wordpress and mysql to find out which one has a requires db and that is the client21:27
hatchis that a logical approach?21:27
bcsallerclient and server are just useful names in this context but meaningless for the most part21:27
hatchoh ok so I can ditch that assignment entirely then21:27
hatchniiiice21:28
hatchjust check to make sure one has the other in it's requires21:28
hatchunder the endpoint....in this case 'db'21:28
bcsallersounds correct21:28
hatchI hope so, I hate redoing stuff21:29
hatchpet peeve hah21:29
hatchand should I include some type of validation to make sure the two endpoints are teh same?21:30
hatchor can I rely on the client side to do that for me?21:30
hatchahh wahtever it's an extra line21:31
hatchmight as well21:31
hatchwell I guess 3 bcuz 80char limit :D21:32
bcsallerhatch: as an aside I changed addUnit to be zero based like juju and updated the tests.21:32
* hatch shakes fist.....why I auta21:33
hatchalright cool21:33
hatch:D21:33
hatchthere complete refactoring and the tests pass22:29
hatchyay for tests22:29
hatchhmm22:44
hatchbcsaller: mind taking a look at this https://code.launchpad.net/~hatch/juju-gui/add-relation When doing the integration tests the add_relation in python.js pre-formats the response which makes me have to check for that in the PyJujuApi - which feels wrong but I don't see any way around it22:58
bcsallerhatch: checking22:59
hatchthanks23:00
bcsallerhatch: you allow endpointToName to be a string but your handling on 459 would break if thats true (and I'm reading it properly)23:03
bcsallerthe formatting you do makes sense though23:04

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