/srv/irclogs.ubuntu.com/2011/10/16/#launchpad-dev.txt

=== Nigel_ is now known as G
=== jkakar_ is now known as jkakar
=== micahg_ is now known as micahg
lifelesscr3: ol18:20
lifelessola18:20
nigelbMorning lifeless :)18:21
nigelbDamn, its still yesterday for me.18:21
lifelessit always will be18:23
lifelessnigelb: hey, hows the jsoopsd going ?18:23
nigelblifeless: Haven't started yet. Life.18:23
lifeless:)18:23
cr3lifeless: hola senor!18:23
lifelesscr3: I'm wondering how to get the service integration for the results tracker underway18:24
lifelesscr3: like e.g. should we identify a couple of useful steps and create bugs for the, ?18:24
lifelesss/the,/them/18:24
cr3lifeless: my understanding is that the next step consisting of auditing the code, does that sound about right?18:26
cr3lifeless: if so, I thought that perhaps having a production instance running might be useful which was completed last week. however, only IS has access to that instance, so I'm not really sure that was really a blocker come to think of it18:28
lifeless:)18:31
lifelessso the code review was part of being willing to open backend ports betwee it and LP18:31
lifelesswe kindof need to do that & the first backend service at the same time18:31
cr3lifeless: what do you mean by "first backend service"?18:32
lifelessservice call18:32
lifelessthing where it calls into LP via a trusted API18:32
lifelesse.g. direct person access18:32
cr3lifeless: ok, does LP already have direct person access?18:33
lifelesscurrently the only APIs for person at the launchpadlib ones - which means you'll run into trouble if the account is renamed18:33
cr3lifeless: btw, opening backend port can be done as one step and then actually using that port a second step18:33
lifelesssure, I kindof like to have a use case up my sleeve when changing firewall rules - so that someone monitoring can see it gets used.18:34
cr3lifeless: do you envision the person access needing a microservice of its own? how will that work?18:34
lifelesslong term we might do a dedicated directory service, yes.18:35
lifelessmedium term LP is the directory, so I'd expect targeted APIs on its services18:35
cr3lifeless: short term, database access? privileges launchpadlib api?18:35
lifeless918:35
lifelessbah18:35
lifelessno, no db access, ever ever ever ever evcer18:35
cr3good, I was going to whine otherwise :)18:35
lifelesspossibly a privileged lplib API, or an xmlrpc api18:35
cr3lifeless: ideally, I'd like for the results tracker to still be runnable standalone by people on the outside. although that's my problem, just thought I'd share some of my pain :)18:36
lifelesscr3: thats a good goal, but there are two very distinct paths to it18:37
lifelesscr3: one path is to say 'run up as much of LP, *or equivalent services*, as the tracker needs'18:37
lifelesscr3: the other path is to say 'the tracker knows how to run standalone and how to run integrated'18:37
cr3lifeless: I could start looking into contributing a person access, any preference between lplib api or xmlrpc? I think there's more lplib api precedent for my inspiration, so that would be my inclination18:37
lifelesscr3: launchpadlib API only knows how to speak active urls; I don't think there is -any- precedent for using things that aren't exposed in the regular traversable fashion over lplib18:38
cr3lifeless: I was leaning towards the latter: being able to parameterize whether the tracker is running integrated or standalone18:38
lifelesscr3: that implies that you'll have two copies of every template, for instance (one for standalone, and one in the lp template service for integrated)18:39
cr3lifeless: I haven't even started thinking about the user interface, I'm hoping to find a way to make template sharing possible somehow18:40
lifelesscr3: If I were working on it, I wouldn't do a standalone mode; I would make the services it depends on clear, crisp, contracts, so that thin versions can be written and combined to run outside of LP18:41
cr3lifeless: maybe a tracker aware zope component that points to templates in the tracker codebase, I really don't know18:41
lifelesscr3: That sounds awfully complex vs saying 'templates are in the LP tree'18:42
cr3lifeless: to me, "LP tree" means it can't run standalone18:42
cr3lifeless: anyways, we'll burn that templates bridge when we're on it, lets concentrate on the person access service for now :)18:43
lifelessso to define it, we need to figure out what data you need, and in what access patterns, so that you can drop your mirrored person table18:44
lifeless(or reduce it to non-duplicated data [e.g. an enterprise-wide person reference]18:44
cr3lifeless: I'm not sure I understand "aren't exposed in the regular traversable fashion", I was thinking something like the hwdb in the lplib api which is only accessible to members of a particular group18:44
lifelesscr3: the hwdb is still referencing things by their current url18:44
lifelesscr3: the current url might be defined in an immutable fashion, but its still 'current url'18:45
cr3lifeless: could the enterprise-wide person reference be the database sequential id in lp or are we thinking of something wider than that?18:45
lifelesscr3: I don't think it can, no. Person ids get merged.18:46
* cr3 will probably have to research how others have solved this problem before18:46
cr3lifeless: just for my edification, when do person ids get merged?18:47
lifelessor rather, it may be we can use the row key, but we need a way to handle lookups on persons that have been merged18:47
lifelesscr3: 'claim my account'18:47
lifelesscr3: or 'this person is me'18:47
cr3lifeless: ok, solving this problem will probably be useful for me in other contexts too, like when merging similar systems for ubuntu friendly18:48
cr3lifeless: do you know if this problem has been tackled before within canonical? any leads you know I should be following to start my exploration down this person access service?18:49
cr3lifeless: also, should we create a bug as you suggested before, or something else, to keep track that someone is looking into this?18:49
lifelessso, I think you need to look at how you use the mirrored person metadata18:52
lifelessand you need to make a bug / LEP that says 'results tracker needs real-time access to <foo> for <bar>' (repeat items in the bug/lep for batch vs single vs search)18:53
lifelessthen we can think about how best to expose that and things that will cause trouble.18:53
cr3lifeless: sounds like a plan. I'm not entierely clear but it certainly gives me something to do and bounce later for feedback.18:56
lifelesscool18:56
cr3I need to jet for now, thanks for the guidance!18:57
lifelessto help clarity: look at your mirrored metadata; look at where you use it (queries, batches, individual templates) and write up a list so that we can together figure out how to meet those uses without you mirroring [all] of the data.18:57
lifelessbwah18:57
=== almaisan-away is now known as al-maisan
=== al-maisan is now known as almaisan-away
=== jtr is now known as jtr__
lifelesshas anyone around atm setup a local oops-tools instance before?20:13
jelmerno20:22
jelmeralso, g'morning :-)20:43
lifelesshi :)20:45
nigelbevening jelmer :)20:47
jelmerhey Nigel, what are you hacking on?20:57
nigelbjelmer: Nothing much tonight :)20:57
nigelbNeed to do some stuff over the week.20:58
lifelesshmm21:02
lifelessI wants rabbitmqadmin packaged :)21:02
lifelessah , it is21:03
lifelesswhere is that hack to change the command line ?22:30
lifeless(to hide passwords etc)22:30
mwhudsonsetproctitle?22:34
lifelessah thanks22:35
lifelessI suspect I won't use it here (anyone with access to the same machine has access to the prod configs...)22:35
lifelessbut its nice to remember it exists22:36
lifelessalso22:36
lifelessamqp for oops-tools. Done.22:36
lifeless\o/22:36
mwhudsoni don't know if using that for security is valid btw, there might be some way of digging out the original command line22:36
lifelessmwhudson: + race conditions22:36
lifelesspython takes a while to start up after all22:36
mwhudsonyeah, that too22:36
lifelessdid I mention amqp ?22:37
lifeless:P22:37
mwhudsonyes, that sounds very nice :)22:37
lifelesshttps://code.launchpad.net/~lifeless/python-oops-tools/amqp/+merge/7950522:37
lifeless(diff is there now)22:52
lifelessrighto and local setup working. \o/23:04
wgrantlifeless: lucid?23:21
lifelesswgrant: of course23:32
lifelessanyone else seeing "Launchpad encountered an internal error during the following operation: generating an incremental diff for a merge proposal.  It was logged with id OOPS-2115MPJ4.  Sorry for the inconvenience"23:39
lifelessI thought we had incrementals turned off ?23:39
wgrantThey're not displayed.23:44
wgrantBut I think they're still generated.23:44
wgrantAnd yes, we've had a couple of reports of that last week.23:44
lifelesswin ec223:54
lifelessec2test@i-da2526ba$ cd /var/launchpad/test; bzr merge lp:~lifeless/launchpad/useoops23:55
lifelessssh: connect to host ec2-50-17-126-253.compute-1.amazonaws.com port 22: Connection timed out23:55

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