[00:00] container "machine-1-lxc-0" created [00:00] well that bit worked... [00:12] thumper: ParentId() committed, looking into bootstrap machine container issue [00:16] ack [00:48] thumper: i just bootstrapped on canonistack and everything works as expected [00:48] wallyworld: try ec2 [00:48] i tried on ec2 and got an error running status- error: cannot log in to admin database: auth fails [00:48] bootstrap seemed to work [00:48] which zone? [00:48] us-east-1 [00:49] hmm... [00:49] my status works [00:49] still, there should be no difference between add-machine on canonistack vs ec2 [00:50] i wrote a test for inject machine and containers and will add that test as a driveby [00:50] thumper: did you remember to "go install launchpad.net/juju-core/..." [00:51] aye [00:51] if not, that would explain your issues perhaps [00:51] hmm... [00:51] v.weird [00:52] why does my brightness keep maxing out. frustrating when trying to conserve power [00:53] * thumper grabs the parent bits as needed now [00:53] thumper: status just started working on ec2. go figure [00:54] wallyworld, ec2 sometimes just pretends you have no instances [00:54] :-( [00:54] wallyworld, it's just one of those fun things than brighten your day every now and then [00:54] ec2 sucks [00:54] would that explain the auth failure on loggin to admin db? [00:54] thumper: add-machine works for me on ec2 [00:55] wallyworld: how about 'juju add-machine 0/lxc' [00:55] because that is what failed for me [00:55] thumper: yes, that works [00:55] that's what i tried [00:55] * thumper pulls a face [00:55] * thumper tries [00:55] just merged latest, will rebuild and try [00:55] ian@wallyworld:~$ juju add-machine 0/lxc -e amazon [00:55] ian@wallyworld:~$ juju status -e amazon [00:55] machines: [00:55] "0": [00:55] agent-state: started [00:55] agent-version: 1.11.1.1 [00:55] dns-name: ec2-107-22-111-226.compute-1.amazonaws.com [00:55] instance-id: i-e77d5b85 [00:55] series: precise [00:55] 0/lxc/0: [00:56] instance-id: pending [00:56] series: precise [00:56] services: {} === wedgwood is now known as wedgwood_away [00:58] wallyworld: hmm... [00:58] wallyworld: you should have quotes around 0/lxc/0 [00:59] ah yes. true [00:59] i didn't change status or anything. i wonder why they are issing. will need to look [00:59] i mean, a container is just a machine [01:00] i'll fix it when i update status to indent containers etc [01:01] wallyworld, thumper: no you shouldn't. yay yaml [01:01] fwereade__: eh? [01:01] fwereade__: so "0" shouldn't have quotes? [01:01] thumper, "0" needs them lest it be interpreted as an int [01:02] ew [01:02] that is orrible [01:03] fwereade__: sure, but when printing to console, shouldn;t the output be "nice"? [01:03] iw leave off the " [01:03] wallyworld, then it wouldn't be yaml [01:04] sure, but it's just for the user to look at? or are we expecting to pipe it into a file? or? [01:04] wallyworld, you can almost certainly customise the yaml output but I don't consider the benefit to be worth the hassle of finding out how to do so [01:04] any anyway, what are you still doing awake? [01:04] er, no good answer there [01:04] wallyworld, it's yaml because that's meant to be nice to look at [01:05] wallyworld, it's less nice than might be hoped in this case [01:05] yeah [01:06] wallyworld, we're not making --format yaml format output other than as yaml, and I question the cost/benefit of figuring out how to goose yaml into doing a slightly nicer thing ;) [01:06] fwereade__: sure. wasn't seriously suggesting it was The Most Important Thing right now :-) [01:07] but if people see it, they do wonder if something is wrong [01:07] since it's inconsistent [01:07] therefore bad [01:07] wallyworld, I would certainly not complain about a fix for that [01:08] i'll add it to my paper cuts list :-) [01:16] ok, bootstrapping ec2 again [01:16] good luck :-) [01:16] let me know how you get on [01:16] i only have 30 mins of battery left :-( [01:16] still waiting for tradesman to arrive before i can relocate [01:21] I wondered whether you were coming or not wallyworld [01:22] bigjools: yeah. long story. i'm really pissed off right now [01:22] i'm never hiring this tiler ver again [01:22] what did I say about builders/tradies? :) [01:23] well, i can't repeat it since there may be kids watching :-) [01:23] I would leave a note on your gate telling him to come back another day since he was too late [01:23] but I guess you're desperate for a bathroom :) [01:23] hi bigjools [01:24] wallyworld: it seemed to work this time [01:24] * thumper hits it again [01:24] o/ thumper [01:24] user error!!! [01:24] wallyworld: bullshit [01:24] pbkac :-P [01:24] although no idea why last time [01:25] * thumper watches pepper chew on maia's shoe [01:25] push it [01:27] bigjools: push what? [01:27] it was an attempt at a salt and pepper joke [01:27] push it real good [01:28] haha [01:28] I've nicknamed her pepper pots [01:28] wallyworld: ah ffs [01:28] yeeeees? [01:28] wallyworld: cloud-init checks for a valid machine id :) [01:28] you need an iron man now [01:28] wallyworld: which 0/lxc/0 fails [01:28] ah balls [01:29] thumper: you want to comment out that check locally and i'll work up a fix? [01:29] * thumper looks for where it fails [01:30] thumper: i can include in my next branch a s i don't think you need it urgently (if you do a local hack) [01:30] state.IsMachineId [01:30] * wallyworld nods [01:31] wallyworld: is a regex [01:31] yes it is [01:31] wallyworld: how is your regex? [01:31] ok [01:31] trivial fix [01:32] you want to fix locally and i'll land a fix later? i don't have much power left [01:32] wallyworld: I'll just comment out locally [01:32] sounds good [01:32] for now [01:32] yep [01:34] thumper: bigjools: power almost gone. good bye cruel world [01:34] wallyworld: use the power adapter [01:34] duh! [01:34] wallyworld: adios [01:34] thumper: i said before - we have no electricty [01:34] till later today :-( [01:34] oh... missed that [01:35] using the phone internet? [01:35] smack your tiler in the chops [01:35] so i'm off to bigjools' house after trademan gets here [01:35] ack [01:35] thumper: yes, using phone. big data bill :-( [01:35] trademan just arrived \o/ [01:35] you get 1.5Gb free! [01:35] yes, but will weekly video calls at soccer training on thursday...... [01:36] anyways, back online a bit later [01:36] * bigjools considers an undercut charge for wallyworld [02:00] ah ffs [02:26] hmm... === negronjl` is now known as negronjl [02:36] * thumper sighs [02:37] bigjools: when wallyworld arrives, tell him that I'm fixing the IsValidMachine as I have to ... for other bits [02:46] hi wallyworld [02:47] wallyworld: cloudinit bits need to know if machineId is a container or not [02:47] wallyworld: as I can't install lxc inside lxc on precise [02:47] so the cloud-init bits need to be more careful [02:48] thumper: you can look at the container type [02:48] wallyworld: I don't have a machine, just an id [02:48] wallyworld: https://codereview.appspot.com/10215043 [02:48] wallyworld: I might expose the ParentId function [02:49] yeah [02:49] or maybe implement an IsContainer? [02:49] i think that would be better [02:50] wallyworld: yeah... [02:51] thumper: or pass both id and container type? [02:51] thumper: I missed your message because he had just arrived and I had to make the whinging Aussie a coffee [02:51] i like that even more [02:51] bigjools: haha [02:51] * wallyworld is waiting for his backrub from bigjools [02:51] wallyworld: what do you mean? [02:52] thumper: just a sec, bigjools is snorting coffee [02:52] * wallyworld slaps bigjools [02:52] STFU [02:52] wallyworld: you don't have to type it to him, he is next to you right? [02:52] thumper: yes, but i wanted to share the hilarity [02:53] within spitting distance [02:53] thumper: i mean instead of introspecting an id to see if the machine is a container, pass both the id and container type [02:53] that sounds cleaner to me [02:53] wallyworld: give me a func prototype [02:54] I don't get what you are saying [02:54] thumper: you say you only have an id in the place where you need to know if a machine is a container, right? [02:54] right [02:55] so, why can't we give that place access to the machine's container type as well as its id? [02:55] ie pass the container type to that logic [02:55] as well as the id [02:56] wallyworld: because... [02:56] * thumper thinks [02:57] * wallyworld is planning for the case where we only have surrogate ids [03:08] wallyworld: getting close to having a machine agent running inside the container [03:08] \o/ [03:09] that one failed because of the valid machine check [03:09] and I was using a previously bootstrapped instance [03:09] * thumper destroyed, rebuilt, bootstraps [03:11] thumper: you haven't seen the txn aborted issue again? [03:11] wallyworld: I've not tried to create many containers [03:11] just waiting for my new bootstrap node to come up [03:11] then I'll add a couple [03:11] kk [03:11] * thumper looks at how to add a mount point to lxc config [03:20] hi mramm [03:20] mramm: really you, or just a machine? [03:20] really me [03:20] mramm: hey hey [03:20] how goes? [03:36] oh ffs [04:17] wallyworld: hey [04:17] hi [04:17] wallyworld: the reason the machine agent didn't start properly on the bootstrap node [04:17] wallyworld: is that the state server address it had was localhost :) [04:17] * thumper kicks a new machine up [04:17] thumper: so not my fault? [04:18] wallyworld: no [04:18] \o/ [04:18] * thumper has started machine 1 [04:29] hmm... [04:29] * thumper makes notes of extra bits needed [04:30] like, specific root file system location [04:30] mounting /var/log/juju [04:30] for some reason, when I run our cloud-init bits, I can't log in... damn password [04:38] wallyworld: what I do need is a machine watcher that watches for changes in containers on the machine [04:38] wallyworld: parameterised by container type [04:38] wallyworld: so "get me a watcher for lxc containers on machine x" [04:39] sounds reasonable [04:41] wallyworld: ok, machine 1 lxc machine agent fails with auth issues [04:41] so I'm probably doing something wrong there. [04:42] thumper: i had auth issues also just bootstrapping [04:42] and all of a sudden it came good [04:42] ec2 is stupid :-( [04:42] thumper: i have to run away and do the school pickup [04:42] ack === tasdomas_afk is now known as tasdomas [06:44] morning === TheRealMue is now known as TheMue [08:05] * fwereade__ seeks a further review on https://codereview.appspot.com/10166044/ [08:08] fwereade__: will do (and good morning btw) [08:10] TheMue, good morning, and cheers :) [08:13] fwereade__: while I'm looking into your source, could you please add a hint to your review in https://codereview.appspot.com/10148045/diff/10001/state/state_test.go line 1272? [08:22] TheMue, just add two services which each have a peer relation, remove them both, Sync, and check you only get one event. [08:22] TheMue, might be nice as a separate test [08:31] fwereade__: ok, good hint, thanks === tasdomas is now known as tasdomas_afk === tasdomas_afk is now known as tasdomas [09:15] * danilos_ steps out, back in ~30 [10:04] rogpeppe1, https://codereview.appspot.com/10166044/patch/1/9 [10:04] fwereade__: looking [10:04] rogpeppe1, you mean to just test that it's hooked up by doing something 100% broken and hoping for a characteristic error? [10:04] fwereade__: yes [10:05] rogpeppe1, I'm not sure that's a very solid technique compared to running the operation and verifying success [10:05] rogpeppe1, ah [10:05] rogpeppe1, but it's just the perm test [10:05] fwereade__: because we must get the permission-denied error (which is all this test is checking for) before it even tries to attempt the operation [10:05] rogpeppe1, gotcha [10:05] rogpeppe1, thanks [10:05] fwereade__: np [11:30] mgz_, wallyworld: https://plus.google.com/hangouts/_/8868e66b07fa02bdc903be4601200d470dae9ee3 ? [11:32] ta === danilos_ is now known as danilos === tasdomas is now known as tasdomas_afk [13:11] fwereade__: ping [13:11] TheMue, pong [13:12] fwereade__: the resumer shall process the ResumeAll() on State.runner? [13:13] TheMue, yeah [13:13] TheMue, you could even just have a state.Resumer type that just happened to implement Worker [13:14] fwereade__: ok, and here periodically? [13:14] TheMue, yes please [13:14] TheMue, I think I need to go eat some lunch though, didn't quite get round to it yet [13:15] bbiab [13:15] fwereade__: Resumer in state? OK, so I don't need a function state.ResumeAll() [13:15] fwereade__: enjoy your meal [13:16] TheMue, I'm not sure [13:16] TheMue, think through the tradeoffs and just precis why what you pick is more sensible ;p [13:17] TheMue, we can chat after kanban if you like [13:23] fwereade__: sure, we can do [13:23] * TheMue just fetched an espresso [13:33] fwereade__: hasn't we decided to lose the stuttering? === wedgwood_away is now known as wedgwood [14:53] TheMue, https://codereview.appspot.com/10148045/ reviewed, nearly there [14:53] fwereade__: thanks [15:02] fwereade__: I'm a bit confused now. while the tests with the two Destroy() before the last propose only raised one event I now have two :( [15:02] fwereade__: so the coalescing as designed in the watcher doesn't work [15:16] fwereade__: ah, it has to do with the change of Sync() to StartSync() in the asserts [15:55] have to leave for today. will comeback to you tomorrow, fwereade__ [17:00] does go-juju upload the tools tarball to MAAS automatically, or does I need to upload it manually? [17:27] I guess I should phrase that differently: is go-juju actually intended to work with MAAS? [17:51] ehw, --upload-tools will work if you're building from source; the alternative is `juju sync-tools` which is somewhat inelegant -- and currently requires valid ec2 credentials in env vars -- but that'll copy from the same place other environs get theirs [17:51] fwereade__, building from source, as in it works in unreleased versions? [17:51] fwereade__ i.e. trunk? [17:52] ehw, with trunk, you need --upload-tools [17:52] ehw, we made a mistake a few revs ago and trunk doesn't currently bootstrap released 1.10 tools, so it's a necessity today [17:52] ehw, in general it should not be [17:53] fwereade__, I'm running from ppa:juju/devel, so I'm assuming it's broke? [17:54] ehw, I'm not certain what version that implies -- 1.11? [17:54] 1.11.0-1~1240~precise1 [17:55] against maas 1.2, from maas-maintainers/stable [17:55] ehw, if you have ec2 credentials, you can run `juju sync-tools` which should get you matching versions copied into environment storage [17:55] ehw, this is a sucky story [17:55] ehw, and it is in hand [17:56] ehw, but it's the story we have today [17:56] fwereade__, will probably need to do some django hacking then; we need to go on the bug warpath over the next couple of weeks [17:57] ehw, sorry, I 'm missing context -- what is it you're trying to do exactly? [17:58] fwereade__, in the larger context, document and debug MAAS, Juju, Openstack, and Landscape in preparation for the 13.09 LDS release [17:58] fwereade__, right now, I'm just trying to get juju-core to talk to maas ;) [17:59] ehw, if it's tools that are the problem you can do it even more low-tech [18:00] ehw, grabbing this and putting it in your environ's storage under the same path should get you a step further https://juju-dist.s3.amazonaws.com/tools/juju-1.11.0-precise-amd64.tgz [18:00] fwereade__, I've got the tarball, but I need to put it where juju is expecting it [18:01] fwereade__, which appears to be under MAAS/api/1.0/files/ [18:01] ehw, in that case you *should* just be able to put it in tools/ therein [18:01] ehw, but: what actual error are you seeing? [18:02] fwereade__, error: no tools available [18:02] fwereade__, it hits the MAAS api looking for "GET /MAAS/api/1.0/files/?prefix=tools%2Fjuju-&op=list HTTP/1.1" [18:03] ehw, ok, yeah, putting something under tools/ in there should help [18:03] brb, let me know if it helps [18:03] fwereade__, yeah, but it's not a filesystem, it's binary blogs in the db [18:03] probably planning on using object storage for that at some point === niemeyer_ is now known as niemeyer [18:17] ehw, you would possibly want to talk to bigjools about that, then, because I have not actually deployed on maas myself [18:18] ehw, but s3 is not, either, it just kinda looks like one if you squint a bit -- if the blob names can have /s you shoudl be fine [18:18] ehw, sorry, I need to be gone for a while now :( [18:19] fwereade__, no worries; I think I might be able to feel my way through this [18:27] ok, had to pop into maas shell and put the file there manually, but it bootstraps now === tasdomas_afk is now known as tasdomas === tasdomas is now known as tasdomas_afk [22:05] oops [22:05] forgot to tear down my ec2 instances yesterday [22:10] thumper: I suppose that's better than forgetting them from 4 months ago [22:10] jcastro: haha [22:10] for sure === wedgwood is now known as wedgwood_away [23:51] * thumper out for lunch