/srv/irclogs.ubuntu.com/2013/06/13/#juju-dev.txt

wallyworld_thumper: hi, just taking to dog to the vet. i'm just about to propose the status stuff. took ages to get the new tests passing. i ended up exporting ParentId() and adding a couple of other helpers01:32
wallyworld_i'll do the watcher stuff next01:32
thumperwallyworld_: ok01:32
wallyworld_the status stuff supported arbitary nesting01:33
wallyworld_bt we don't use it yet but it will be there for when we do01:33
wallyworld_bbiab01:33
wallyworld_thumper: found another problem - there are docs ordered by machine id which do an Atoi() but container ids fail that since they are not numbers. so i'll have to find a way around that02:23
thumperhahaha02:24
thumperbummer02:24
wallyworld_yeah, i'll need to split the id and process from left to right02:25
wallyworld_thumper: we you have a moment https://codereview.appspot.com/1025204403:00
wallyworld_when03:01
wallyworld_thumper: question about container watchers - i'll first do a lifecycle watcher. does that suit your needs?03:07
thumperwallyworld_: hey,03:18
wallyworld_ho03:18
thumperwallyworld_: I think that is what I need03:18
wallyworld_ok, can add an entity watcher later if needed03:18
thumperwhat's the difference?03:18
wallyworld_i think lifecycle is created/deleted etc, entity is state changes and such03:19
wallyworld_not sure exactly yet03:19
wallyworld_i'll know once i write some tests03:19
thumperwallyworld_: I want a watcher like the one that he provisioner watches :)03:28
thumperdon't know what type that is03:28
wallyworld_ok03:28
wallyworld_thumper: https://codereview.appspot.com/1025004403:58
thumperwallyworld_: soon04:06
wallyworld_thumper: no problem, just wanted to let you know they were there04:06
thumperkk04:06
* thumper crosses fingers04:48
* thumper waits for ec2 to bootstrap04:54
thumperwallyworld_: http://paste.ubuntu.com/5760381/05:11
=== tasdomas_afk is now known as tasdomas
=== thumper is now known as thumper-afk
rogpeppe1mornin' all07:29
=== thumper-afk is now known as thumper
thumperhi rogpeppe107:47
rogpeppe1thumper: yo!07:47
thumperrogpeppe1:  http://paste.ubuntu.com/5760381/07:48
thumperrogpeppe1: manual poking to get to this stage07:48
thumperbut the bits are working07:48
thumperwell, mostly working07:48
rogpeppe1thumper: why the lack of quotes around the container name?07:49
rogpeppe1thumper: good stuff  BTW!07:49
thumperrogpeppe1: yaml output07:49
thumperneeded around 0 so not an int07:49
rogpeppe1thumper: ah of course. a number needs to be quoted07:49
thumperbut 1/lxc/0 is obviously a string07:49
thumperso no quotes needed07:49
thumperstill using manual hackery to manually create a provisioner on the machine07:50
thumperbut it is using the provisioner task and lxc broker07:50
thumperwith a real cloud-init to start the machine agent07:50
* thumper jumps into the meeting hangout07:51
wallyworld_thumper: saw the pastebin earlier, looks nice, eill look even nicer with my juju status branch landed :-)07:55
jammgz: https://plus.google.com/hangouts/_/d3f48db1cccf0d24b0573a02f3a46f709af109a608:01
jamwallyworld_: ^^08:02
wallyworld_oh different08:02
wallyworld_TheMue: ^^^^^^^^^^08:02
jamwallyworld_: where did you get your link from? (This one was on the calendar)08:03
wallyworld_jam: the calendar08:03
fwereade__wallyworld_, jam, I think I'm in the calendar one too... https://plus.google.com/hangouts/_/bf3f4cfe715017bf60521d59b0628e5873f2a1d308:04
* fwereade__ leaves08:04
wallyworld_https://plus.google.com/hangouts/_/calendar/bWFyay5yYW1tLWNocmlzdGVuc2VuQGNhbm9uaWNhbC5jb20.mut2dk4mvoj39eq8jqni20ukoc08:04
=== danilos__ is now known as danilos
thumperhttps://plus.google.com/hangouts/_/calendar/bWFyay5yYW1tLWNocmlzdGVuc2VuQGNhbm9uaWNhbC5jb20.mut2dk4mvoj39eq8jqni20ukoc08:04
wallyworld_fwereade__: yes, thumperstuffed up :-)08:05
wallyworld_thumper: were you going to chat about containers? perhaps a joint meeting with me too?08:07
thumperwallyworld_: I wanted to discuss the provisioner refactoring08:07
wallyworld_ok, i have some questions as well08:08
mrammhey all,08:43
mrammsorry I set my alarm wrong08:43
mrammjust went off08:43
mrammand I realize the team meeting is not starting in 15 min, it started 45 min ago08:43
mgzmramm: https://plus.google.com/hangouts/_/d3f48db1cccf0d24b0573a02f3a46f709af109a608:45
mrammjam: did you guys chat about when tarmac is going to "land"?09:05
jamtoday09:06
jammramm: I'll be making it live today. Everyone seemed happy with the plan I proposed.09:06
mrammcool09:07
mrammsounds good09:07
=== tasdomas is now known as tasdomas_afk
=== tasdomas_afk is now known as tasdomas
jamthumper: quick poke about the "InParallel" test.09:21
jamWhat if we change it from sleeping, to having one subprocess block until the other one is started?09:22
thumperjam: yes...09:22
jamso it would wait for a file that the other one creates, for example09:22
thumperI don't really care how it is changed as long as it is testing the parallel gathering09:23
jamyou could have subprocess a creates file a and waits for b09:23
jamand vice versa09:23
jamso they must both be called at the same time09:23
TheMuefwereade__: ping10:15
fwereade__TheMue, pong10:35
fwereade__TheMue, still eating lunch10:35
fwereade__TheMue, I may have failed to communicate that if yur tests depend on some specific number of events they're Doing It Wrong10:36
fwereade__TheMue, but if the tests just watch for events until there are no more cleanups to perform... then... hmm. there may actually still be a race. bah10:36
fwereade__TheMue, yeah, there's a race, but it only affects the followup10:37
fwereade__TheMue, so all you need to do is watch for cleanup events until you get one and there aren't any more cleanups required10:37
fwereade__TheMue, at that point you can be sure that the cleaner did its job10:38
jamfwereade__: https://codereview.appspot.com/10234047 makes a test that occassionaly fails due to timing hiccups into a faster and reliable 'event' sort of mode.10:38
jamSomething I'd like to land before switching to tarmac10:38
fwereade__jam, LGTM10:39
TheMuefwereade__: Yeah, it does. Only want to talk about the timeout with you.10:39
fwereade__TheMue, ah, go on10:39
TheMuefwereade__: You wondered about a "typo", but sadly it is none. The watcher in the test gets the second event (where then no more cleanups are needed, I followed it) after such a long time.10:41
TheMuefwereade__: Maybe you've any idea for the reason.10:41
TheMuefwereade__: Because that definitely should not be.10:41
fwereade__TheMue, ah, are you not syncing in your select loop? StartSync at the start of that loop, sorry I missed it10:41
fwereade__TheMue, default sync period is 5s10:41
fwereade__TheMue, ha10:42
TheMuefwereade__: IMHO I've tested it also with StartSync in the loop, but I'll verify it.10:42
fwereade__TheMue, no, I know what's going on, sorry10:42
TheMuefwereade__: Oh *listening*10:42
fwereade__TheMue, StartSync just at the top of the loop is not good enough10:42
fwereade__TheMue, because the watcher event could come in after that10:43
fwereade__TheMue, you need to keep on independently StartSyncing as you go through10:43
fwereade__TheMue, with StartSync at the top, `case <-time.After(50 * time.Millisecond): continue` should do the trick10:43
jammgz: can you look at https://codereview.appspot.com/10234047 so I can land it?10:44
TheMuefwereade__: ah, push harder, nice idea10:44
TheMuefwereade__: will add it and come back to you10:44
TheMuefwereade__: but please don't let me disturb you at lunch, i'm sorry10:45
fwereade__jam, fwiw, I think there may still be branches approved that aren't necessarily ready to land, please unapprove them before you start tarmaccing ;)10:45
mgzlooking at it10:46
mgzand ugh, shell10:47
jammgz: :)10:47
TheMuefwereade__: just one last thing: fantastic, it works!10:48
TheMuefwereade__: thanks10:48
jammgz: so have I turned you off so completely ?10:53
mgzjam: commented10:53
jammgz: thanks11:05
* TheMue => lunchtime11:13
danilosmgz, jam: hey, https://plus.google.com/hangouts/_/8868e66b07fa02bdc903be4601200d470dae9ee3 :)11:30
mgzta11:31
danilosmgz, I am back, fwiw (and actually already fixing another annoyance I hit)12:42
mgzlikewise12:43
danilosanybody wants to take a peek at trivial branch: https://codereview.appspot.com/1024404412:44
TheMuefwereade__: any good idea on how to test the resumer?12:47
danilosjam: you had a fix for StateSuite.TestOpenDelaysRetryBadAddress failure or was that something else?13:09
fwereade__TheMue, none whatsoever -- just start it and stop it I reckon13:22
fwereade__TheMue, (sorry I mised you)13:22
fwereade__TheMue, we'd have to inflict damage to the transaction log on purpose to test it, and spending time on that in particular seems like a bit of a waste of effort13:23
TheMuefwereade__: no pro, i'll add this. the rest has been simple. cleaner is also proposed again13:23
TheMuefwereade__: yep, think so too. i took a look on how ResumeAll() works, and here we would have to do evil stuff under the hood :)13:24
=== wedgwood_away is now known as wedgwood
jammgz or danilos: the juju cross-team meeting is supposed to happen in about 10 minutes, could one of you make it?14:25
mgzI can if needed14:25
jammgz: thanks, I can't really make it today14:26
jam(today is my wife's b-day)14:26
jammgz: https://plus.google.com/hangouts/_/calendar/YW50b25pby5yb3NhbGVzQGNhbm9uaWNhbC5jb20.2ijeg1lk8l6gq6d4ilo6jot1j4 is the link from email14:26
mgzta14:26
TheMuetarmac help needed. i've got an "old" branch now with two lgtms (after a final local change). now i've committed and merged it locally. but i'm not sure about the reproposal for launchpad.14:49
mgzsee the instructions in jam's post to the list14:50
TheMuemgz: i've seen them, but still have problems/questions. if i set my branched to approved now the final changes won't be in there.14:51
mgzyou just go to the branch webpage, and repropose against lp:juju-core14:52
TheMuewith "resubmit proposal"?14:53
mgzyup14:53
TheMueand my still local changes? simple bzr push before resubmit?14:54
mgzyes14:55
TheMuethat sounds good, thanks14:56
TheMueso, now i'm curious how it will work ;)15:04
fwereade__TheMue, mramm: ready?15:08
mrammso, meeting15:08
mrammyep15:08
mrammhangout?15:08
TheMueyep15:08
fwereade__mramm, TheMue, I'll start one15:08
rogpeppe1just going to pick up van from MOT test. back in 15 mins.15:22
TheMuefwereade__: ping => https://codereview.appspot.com/1026604315:37
fwereade__TheMue, cheers15:37
=== tasdomas is now known as tasdomas_afk
jamespagemgz, do you have a release tarball for 1.11.0?16:56
mgzjamespage: no, but I can make one16:59
mgzit just won't be what was actually used (as I haven't switched dave onto the new method yet)16:59
jamespagemgz, great - it would be nice to stuff a new release into saucy as we make it he default16:59
ahasenackso juju-core trunk now wants a service name in the config yaml file?18:09
ahasenackhttps://code.launchpad.net/~fwereade/juju-core/config-5-state-service-config-yaml/+merge/16857918:09
ahasenackjust checking18:09
rogpeppe1time to stop. g'night all.18:47
thumpermorning folks21:34
thumperfwereade__: ping21:49
* thumper bootstraps ec222:04
thumpergeez this takes a while...22:04
thumpermramm2: ping22:13
thumperjcastro: ping?22:15
thumperm_3: ping?22:16
* thumper feels the loneliness of being at utc+1222:17
jcastroyo thumper22:18
thumperjcastro: hey man22:18
jcastroI am in the middle of BBQing, so in and out22:18
jcastroso keep talking22:18
thumperjcastro: what is a nice simple charm to deploy?22:18
thumperjcastro: the first one to be in an lxc container in ec222:18
m_3thumper: pong22:19
m_3what's up?22:19
thumperm_3: just feeling lonely :)22:19
m_3ha22:19
thumperm_3: wanting an easy charm for testing22:19
m_3mysql22:19
m_3it's my goto for when I need to precache lxc and stuff like that22:19
thumperprecache?22:19
jcastrothumper: wordpress is our defacto22:21
jcastroetherpad-lite has no deps though22:21
jcastroif you only want a single container with no relations22:21
m_3thumper: yeah, the juju-0.7 worflow was pretty flawed wrt lxc22:21
m_3thumper: you'd run juju bootstrap and that'd run zk and prep stuff22:22
m_3but the lxc template images wouldn't build out (or download cloudimages) until the first time you actually _deployed_ a service22:22
m_3um... without letting the user know what was going on22:23
thumper:)22:23
m_3so it'd just quietly block while downloading22:23
m_3you'd naturally kill it22:23
m_3and wind up with a halfway downloaded image in /var/cache/lxc22:23
jcastrolet's not spoil him with how it sucked22:24
m_3ha22:24
m_3sorry22:24
m_3he asked22:24
jcastrothat way he can come up with something awesome without being jaded like we are22:24
m_3yes, /me will sit on his hands22:24
jcastro"and then, we asked 10 people to download 450mb of images on conference wireless for this charm school"22:24
jcastrohahahah22:24
jcastro<--- what were we thinking22:24
* thumper has some thoughts around that22:24
thumperjcastro: what if we wrote a simple go http server for you22:25
thumperjcastro: so at a charm school, you could run this, and it serves just the ubuntu-cloud lxc tempalte22:25
thumperpeople could then run wget to grab it locally22:25
m_3we can cache cloud images lots of ways22:25
m_3lxc builds nicely from cloud images now22:25
m_3I also liked having the download happen during package install... i.e., if the local provider is in its own package, it can get the image templates during package install22:27
m_3peiople are used to waiting on apt22:27
m_3thumper: but really we're open to whatever makes sense man22:27
thumperwell, I can see how to make the local provider now that I've messed around a lot with lxc22:28
thumperbut containerisation first, then network, then local provicer22:28
thumperbut it is coming22:28
* m_3 loves lxc22:28
jcastrothumper: that sounds like a plan22:30
wallyworld_thumper: you happy with the juju status mp now?22:40
thumperwallyworld_: sorry, not looked at it22:40
thumpertrying to work out why what worked yesterday isn't today22:41
wallyworld_np. fat chance i'll get a 2nd +1 today :-(22:41
thumperat least I have worked out why my programs were hanging22:45
wallyworld_reason?22:48
thumperhmm...22:49
thumperlxc isn't nice22:49
thumpergolxc runs lxc-start22:49
thumperthen waits forever for it to be running22:50
thumperif there is an error in the config somehow...22:50
thumperthen it won't start22:50
thumperand lxc-start doesn't return non-zero exit22:50
thumperalso found22:50
thumperthat if I pass the lxc.conf file to lxc-create, the mount works22:51
thumperif I only pass it to lxc-start, the mount fails22:51
thumperso it doesn't start22:51
* thumper quietly rages22:55
thumperwallyworld_: http://paste.ubuntu.com/5763044/22:58
wallyworld_thumper: niiiiiice22:59
wallyworld_would look better with my juju status :-)22:59
thumper:)22:59
wallyworld_can we wrap lxc-start somehow?22:59
thumperthat is with --force-machine22:59
thumperwallyworld_: I am22:59
thumpertwice22:59
wallyworld_maybe 3 times22:59
thumperI'm going to ask for some help around that23:00
* thumper continues blindly (well with poor vision)23:01
thumperwallyworld_: I think part of the reason is that we are asking to start --daemon23:02
thumperwhich appears to be fire and forget23:02
wallyworld_sounds about right23:02
thumperso, zero rc, all good23:02
wallyworld_my lxc foo is not excellent23:02
thumperbut the issue appears to be "we wait forever"23:02
wallyworld_i really wish we had decent progress monitoring23:03
wallyworld_baked into the cli23:03
thumperwallyworld_: I am using my logging to trace stuff though23:03
thumpervery nice23:03
wallyworld_\o/23:03
wallyworld_but we need to productise stuff for a user23:03
* thumper nods23:04
thumperyeah23:04
=== wedgwood is now known as wedgwood_away
thumperwallyworld_: lxc containers on the bootstrap node are working fine23:32
wallyworld_yay23:32
thumperwallyworld_: got a machine agent up and running on machine 023:32
thumper0/lxc/0 that is23:32
wallyworld_manually?23:32
thumpersure...23:32
thumperI need that container watcher23:32
wallyworld_thumper: up for review yesterday23:33
thumpercan't automate the provisioner until I get that23:33
mramm2thumper: pong23:33
thumper\o/23:33
thumperhi mramm223:33
thumpermramm2: was nothing important, was feeling lonely :)23:33
mramm2haha23:33
wallyworld_thumper: i did tell you it was there :-P23:33
* thumper sighs23:33
mramm2thumper: I don't know when andrew starts23:34
mramm2but nate the other new hire is now slated to start on the 29th23:34
thumpermramm2: so... using --force-machine, you can deploy into a running container23:34
thumpermramm2: but the 29th of july, not june23:34
mramm2manual network bridging or what23:34
thumpermramm2: just using the lxc default bridge23:34
mramm2july23:35
thumperso no access in, just out23:35
mramm2wow, I missed that23:35
mramm2you are of course right23:35
mramm2that is a long time23:35
mramm2hopefully andrew will start sooner23:35
* thumper nods23:35
mramm2so you are bridging out, and everything is working23:36
mramm2rock and roll23:36
=== mramm2 is now known as mramm
=== mramm is now known as mramm22
=== mramm22 is now known as mramm

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