[02:13] thumper: when destroy-env is called, do LXCs get shut down gracefully? [02:13] if by gracefully you mean lxc-stop followed by lxc-destroy, then yes [02:14] thumper: that's not graceful :( [02:14] seems pretty graceful to me [02:14] lxc-stop is like "oi, we're shutting down now" [02:14] does it shut down the processes normally? [02:14] I think so, by default [02:15] I want to make sure that stuff like dhcpc releases leases [02:15] I think it operates like the "shutdown" command [02:15] ok that's good then [02:15] bigjools: best thing would be to ask hallyn and stgraber [02:15] ok, cheers [02:15] np [02:15] yay, finally 0 unread work emails [02:15] just 25 personal to go === vladk|offline is now known as vladk === vladk is now known as vladk|offline [09:40] hello [09:49] hey wwitzel3 [09:53] fwereade: ping, I'd love to chat a bit about Mac support [09:57] mornign [09:57] perrito666: morning [10:02] my calendar says that our standup is now in about 13hs.. something is broken [10:04] perrito666: my calendar doesn't even have a standup on it anymore [10:04] jam1, pong [10:04] hey fwereade [10:04] wwitzel3: heh, I think mine got all shaken on the tz hanges [10:05] so, I did a patch that lets us get stuff like "mavericks" out, and I found that if I patch that so it reports "trusty" for Mac OS X, then all of cmd/juju passes [10:05] I think we have a few issues that we might want to try to untangle, but I figured it would be most productive to untangle that with a chat [10:06] jam1, cool [10:06] jam1, now? [10:06] fwereade: if you're available [10:06] perrito666: looks like something nuked the daily standup, as it is missing from mine now, too [10:07] jam1: next one is sheduled for tomorrow 11:45 Auckland time [10:08] perrito666: that is the AU guys [10:08] I think we talked about splitting into per-team meetings [10:08] but for today we can have our regular one and sort it out from there [10:08] jam1: apparently they reused our event [10:08] :p [10:09] the one that corresponds to their stand up is no longer there [10:09] bloody australasias... :) [10:10] (with an n even... it's been a long day) [10:10] perrito666: looks like you're right, the one extra early in the day matches the invite for our regular one, and I don't see the one that said something like NZ meeting [10:10] jam1, sure, just a mo [10:12] fwereade: might as well just use the standup hangout [10:13] fwereade: I'm there when you want to join [10:13] jam1, I don't seem to have that on my calendar any more --link? [10:14] fwereade: reload the calendar, I just added it back (at least your @canonical address): https://plus.google.com/hangouts/_/canonical.com/juju-core === vladk|offline is now known as vladk [10:19] jam1, fwereade, perrito666, wwitzel3: hello [10:21] hi vladk [10:22] hi vladk [10:26] hi vladk [10:38] juju dev newbie question: i have a function that is going to emit something on stderr and I want to test that output. Is it considered bad form to patch os.Stderr for this test? This would mean the test can never be run safely in parallel with other tests. [10:38] menn0: I'd make the function take a stream to show errors on, probably [10:39] An alternative would be to somehow get a different stderr passed to the function but in this case that might require some gymnastics [10:39] menn0: you can't patch os.Stderr, but you can have your function write to a generic io.Writer and pass it a bytes.buffer for example [10:40] this suggests patching can be done: http://stackoverflow.com/a/10474674 [10:41] menn0: it also begins with "I dont recommend this" [10:41] but i'll try the code restructuring approach [10:41] perrito666: that's why i'm asking before doing :) [10:42] menn0: after the first code patch it suggests natefinch approach [10:42] menn0: I think we have some "cmd.Context" code that is intended to hide the fact that there is a real Stderr out there. [10:43] i've seen cmd.Context. in this case it's a cmd's Init function which doesn't use cmd.Context. [10:43] changing the signature isn't really feasible either [10:44] if only you had the source code :P [10:44] i'll get around it by moving most of the implementation to another function [10:44] thanks all [10:44] are we doing a group standup today? [10:44] menn0: if it is a new method, what prevents the signature from changing? [10:44] menn0: it may be that you're doing the work too early if you need to write to stderr during init [10:45] mgz: I was going to go to the early one and schedule my team's later [10:45] hey all [10:45] jam: maybe. Init does seem like the right place for a deprecation warning though. [10:45] I'm not really here, but I thought I'd say hi [10:46] hi voidspace [10:46] wwitzel3: morning :-) [10:46] jam: it could be emitted later I guess [10:46] hi voidspace :) [10:46] I'm a bit jet-lagged, my body seems to think it's 4 in the morning [10:46] menn0: morning [10:46] mgz: we're having a standup, yes [11:16] when running ensure-availability with maas, one of my state machines gets stuck in pending, the machine log just contains: /var/lib/juju/tools/machine-1/jujud: Syntax error: Unterminated quoted string [11:16] anyone seen that before? [11:16] new to me [11:17] wwitzel3: I would guess that its the result of running one of these embedded bashes we have [11:17] and that is improperly escaped [11:17] but that much should not be much help [11:18] perrito666: the fact that it only happens on one, means it is properly which ever server ends up at the tail of some list [11:18] probably [11:37] wwitzel3: I know we had to fix some things to use "printf" instead of "echo" because dash's echo works differently than bash's echo [11:37] wrt escaping [11:38] jam1: ok, I will poke around, so far it is specific to maas, it doesn't happen on ec2 [11:38] wwitzel3: hmm.. that makes it sound like it's a cloud metadata escaping bug [11:39] jam1: also, it always happens to machine-1, when having only a machine-0 and running ensure-availability [11:50] wwitzel3: so machine-2 comes up correctly, but machine-1 is borked? [11:55] jam1: yep [11:55] jam1: I am making sure it isn't just an issue with that node on my maas [12:03] hi [12:14] jam1: it appears to be a non-issue, something specific to node2 on my maas, when away after I recommisioned it. [12:14] went [12:14] wwitzel3: weird. I've heard that sometimes maas nodes can have their old state left around on disk [12:26] fwereade: so API Versioning... if we changed the scope so that the entire API was versioned, and selected at Login time, then we could use the apiRoot changing to implement it, without as much changes to the RPC package. [12:26] But I think that Facade granularity really is what we want, right? [12:27] jam1, yeah, I would be happier with facade granularity; and, particularly at this stage in the cycle, less inclined to accept pure quicker-easier style arguments otherwise [12:32] I'm running juju 1.18.1 on trusty and cannot deploy to a local environment [12:33] the environment bootstraps normally, but deployed units are stuck in a "pending" state [12:33] juju-core is installed from apt, juju-local is present [12:34] the all-machines.log looks like this: http://pastebin.com/jZyFa8kv [12:34] any suggestions as to how I should debug this? [13:02] natefinch, hey, a piece of HA work you may have missed: manual provider HA [13:08] fwereade: blech [13:08] fwereade: if you have time, my rough cut of determining the methods late is here: lp:///~jameinel/juju-core/reflect-only-facades [13:08] fwereade: it needs tests and cleanup (we don't have to introspect ObjType early, etc) [13:08] fwereade: but I wouldn't mind a sanity check that it seems reasonable [13:23] fwereade: the one bit I wasn't very happy with is that "bindRequest" can have a return where it is returning both an actual struct and an err at the same time [13:23] but hmm... maybe I can make that nicer [13:24] jam1: it's not always bad to return real data and an error, but you're right that most of the time it's not done. [13:24] natefinch: I think it breaks people's internal model [13:25] jam1: yeah, there's precedent with io.Reader, but that tends to mess people up, too (it can return that it read a non-zero number of bytes and then an error (which is often EOF)) [13:25] jam1: certainly if it's avoidable, it's better [13:31] jam1, looking sane so far, will look further when I've collected laura [13:35] fwereade: thanks, I did a couple of small tweaks, but the test suite passes with little change [13:38] fwereade: the one behavior that actually changed is that it used to be if you called "Foo", "BadId", "RealMethod" you would get a notification message with body struct{}{} rather than nil because the RealMethod was known, whereas now the ObjType isn't know if you don't have a correct Id [13:38] but I think that is just fine, and the specific behavior about struct{}{} vs nil was abstraction leakage === liam_ is now known as Guest5040 [13:55] hey does anyone know when rog comes back to irc? [13:57] perrito666: he's out 2wk. back the 22nd === vladk is now known as vladk|offline [14:01] tx rick_h_ [14:49] natefinch: you are a good guy, you made the timeconv for us gmt-+ users [14:50] perrito666: it's so much easier for me, because I know the offset from me to you guys... I hate stating the time in GMT, because then *everyone* has to convert. [15:53] this is the most anoying error I have ever read "dialled mongo successfully" [15:53] lol [16:06] niemeyer, hey, are you around? [16:20] dimitern: Yep [16:21] niemeyer, so we'll need a couple of new features in goamz i'm working on for the networking stuff [16:22] niemeyer, just to pass it by you as well before i start [16:23] niemeyer, we need to be able to get the default vpc id with DescribeAccountAttributes [16:24] niemeyer, and improve the ec2test server to more closely mimic ec2, so that when you start a machine you get a network interface created on it (unless you explicitly create one yourself) [16:27] redir: one of your funny commit messages showed a new script for rebuilding the index. what is that? it sounds useful. [16:28] bac: what question? [16:29] oh [16:29] that was something I was going to do so I could load things from mongo [16:29] but stopped and removed because I decided it was a rabbit hole and not part of this card. [16:30] s/load/ingest data/ [16:30] bac ^^ [16:52] dimitern: Okay, and what's the current plan? [17:08] niemeyer, i'll propose 2 branches what implement DescribeAccountAttributes and the extensions to ec2test package in the next couple of days, and i'd appreciate a review from you :) [17:08] dimitern: Sure thing [17:09] niemeyer, thanks! [18:10] enjoying some of these state/state_test.go dummy service names [18:10] "umadbro" [18:10] "haha/borken" [18:11] heh [19:10] natefinch, ping [19:11] dimitern: pong [19:13] natefinch, I have a tiny fix for bug 1316762 for you to review if you have 2mins [19:13] <_mup_> Bug #1316762: juju doesn't check if 8021q module is present before modprobing it [19:13] (as soon as lbox propose is done) [19:14] natefinch, https://codereview.appspot.com/93130043 there it is [19:15] sure [19:15] natefinch, thanks! [19:18] dimitern: LGTM [19:24] natefinch, cheers === vladk|offline is now known as vladk [21:33] o/ [21:43] morning [21:43] o/ menn0 === hatch__ is now known as hatch [22:09] thumper: good mornight [22:09] o/ perrito666 [22:09] heh [22:11] * perrito666 killing time working on a coffee, I cant see what hipsters find so appealing on this, phone internet sucks [22:21] perrito666: working in a cafe? [22:21] perrito666: my phone internet is not too bad actually [22:21] we have 4G here now [22:21] thumper: had to wait for my wife so I might as well work [22:21] I can degrade very quickly into shitty though [22:21] nah up to 3g [22:23] I just moved my env to a ec2 micro and running under screen :) [22:23] my phone could cook a steak :) [22:28] perrito666: a very very small steak [22:28] well iphones are quite big and this one is hot [22:37] i dropped to 3g the other day and then forgot and did things like downloading docker images...