[01:09] thumper: https://codereview.appspot.com/10854043 [01:21] * wallyworld_ goes to look for food [02:06] bigjools: you seen this error trying to compile the go-curl stuff? https://pastebin.canonical.com/93649/ [02:07] this is from one of the IS guys trying to deploy juju from source for prodstack [02:07] I have no [02:07] t [02:07] is it a 1.1 vs 1.0 thing? [02:07] maybe it's a precise/Go version issue [02:07] or missing go dev headers [02:07] could be. precise only has 1.0.2 i think [02:08] it should work on 1.0 [02:08] looks like a missing package to me [02:08] I am using 1.0.2 here and it works [02:09] i asked them to install the deps that were in the go-curl email [02:09] they had done that [02:09] does he have golang-src installed? [02:09] that too, yes [02:09] not sure about golang-src. that surely shouldn't be needed? [02:10] it will have .h files needed to compile [02:10] i guess that's relevant for goc stuff [02:11] /usr/share/go/src/cmd/cgo/out.go:typedef __SIZE_TYPE__ GoUintptr; [02:11] ed@beast:~/canonical/GO/src/launchpad.net/gwacl$ dpkg -S /usr/share/go/src/cmd/cgo/out.go [02:11] golang-src: /usr/share/go/src/cmd/cgo/out.go [02:11] it's needed [02:11] ok, thanks. i'll let him know. we should add that to any doc [02:11] yeah [02:11] dunno why I have it installed, something will have pulled it in [02:12] i have it installed cause i built Go 1.1 from source [02:16] why are you using 1.1? [02:16] I know 1.0 is unsupported, but ... [02:16] 1.0 is still default in raring it seems [02:17] juju add-machine is very useful, thanks wallyworld_ [02:18] davecheney: no problemo. what are you using it for? [02:20] need a precise machine to simular an lp builder [02:20] so i can figure out wtf has happened to the release ppas [02:23] davecheney: can I help? [02:23] bigjools: nah, it's not lp specifically [02:23] i suspect becaue the builders are using such an old version of go [02:23] maybe I can still help :) [02:23] we're getting screwed over with compatability issues [02:24] have you tried using pbuilder? [02:24] basically the /usr/bin/juju from the ppa can't talk to ec2 and/or our cloud image query thing [02:24] but one I build myself, from the same source, can [02:24] it creates a build env using package versions from a particular release [02:24] yup [02:24] which is why I'm making a precise machine to try to emulate it [02:24] ugh, pbuilder didn't recreate your problem? [02:24] can't be fucked with that [02:25] this is what vm's are for [02:25] pbuilder is much easier mate [02:25] juju is easier [02:25] :) [02:25] :) [02:26] where is the tm symbol on my keyboard [02:26] well pbuilder is the closest thing you'll get to what the builders do [02:26] ™ [02:26] * bigjools offers a copy/paste token [02:26] Juju is fucking awesome™ [02:27] keep repeating it [02:27] soon it'll be 2nd nature [02:27] I need a slogan for maas [02:28] for the maas's not the class's [02:28] er [02:28] masses not the classes [02:28] not bad [03:06] thumper: all those comments about machine 0 etc - all that stuff existing previously in the tests - i just moved it around and extracted some common logic [03:07] i'm wondering whether we want to do a clean up at the end of this work rather than fixing a bunch of existing stuff that isn't too badly out of date now [03:13] wallyworld_: I'd be up for a separate branch [03:13] it was more of an observation [03:13] and we should work to make tests easier [03:13] agreed [03:14] i'm writing tests for having assignnew honour container constraints [03:15] so when that's done, we can deploy into a new container without needing add-machine first [03:35] cool [04:25] ugh [04:34] thumper: https://pastebin.canonical.com/93667/ https://codereview.appspot.com/10858043 [04:45] anyone tried to compile juju on precise recently ? [04:45] http://paste.ubuntu.com/5835154/ [04:48] see my convo with wallyworld_ from earlier [04:48] le shit [04:49] install golang-src, basically [04:49] ubuntu@ip-10-248-67-205:~/src/github.com/andelf/go-curl$ dpkg -l | grep golang [04:49] ii golang-go 2:1-5 Go programming language compiler [04:49] ii golang-src 2:1-5 Go programming language compiler - source files [04:49] huh [04:49] ummmm [04:51] so GoUintptr is declared in the files that package installs [04:53] #include "_cgo_export.h" [04:53] ^ this is a bit suspect [04:54] how did this manage to build on the lp builders [04:54] ? [04:56] does it build ok on raring? [04:56] will check [04:56] it builds ok on my R machine [04:56] but I need to check [04:56] please hold [04:56] it builds for me locally [04:56] same [04:56] on raring [04:57] but that means nothing in the world of building packages [04:58] http://www.keepcalm-o-matic.co.uk/p/keep-calm-it-works-on-my-machine/. [04:58] http://www.keepcalm-o-matic.co.uk/p/keep-calm-it-works-on-my-machine/ [05:38] bigjools: it builds fine on raring [05:38] fun [05:38] any idea what difference would cause this? [05:39] and feel free to file a bug on bugs.launchpad.net/gwacl [05:39] raring has a different version of go and libcurl3 [05:40] ^ first guess [05:40] it's not going to help now, but here's another reason to push an SRU [05:40] lucky(~) % juju scp -e ap-southeast-1 1 bin/juju . [05:40] cp: cannot stat ‘1’: No such file or directory [05:40] error: exit status 1 [05:40] ^ did I derp, or is this a bug ? [06:09] bigjools: confirmed, go-curl/gwacl works on go 1.0.2 [06:09] i am checking if it can compile for 1.0.1 or earlier [06:10] what does precise have? I can't tell from the package versioning [06:13] it's called go1 [06:14] not really sure what it is under the hood [06:14] not sure how the distro guys can keep an unsupported release in an LTS [06:15] bigjools: there is a big disconnect going on there [06:19] bigjools: https://launchpad.net/juju-project << can you add https://launchpad.net/gwacl to this list ? [06:20] sure [06:21] ta muchly [06:21] chasing down which versions of go can't compile go-curl [06:22] then I can try to figure out the bug that was fixed between releases [06:26] https://bugs.launchpad.net/juju-core/+bug/1196811 === tasdomas_afk is now known as tasdomas [08:15] davecheney, mgz: any update on next release of juju-core? standing by to help upload to saucy [08:18] jamespage: i'll forward u an email with the latst state of play [08:18] davecheney, thanks [08:19] done [09:39] fwereade: I did the first part of that refactoring of duplicated provider code that you wanted me to do. Thumper was going to review it, but I guess it didn't work out. [09:39] I don't suppose you could provide the second review? It's here: https://codereview.appspot.com/10830044 [09:58] fwereade: sorted out the laptop issue I take it? [09:58] jtv, sure, thanks for doing that, sorry I missed you [09:59] mgz, yeah, it all seems happy again [10:02] jtv, LGTM, that's awesome -- thank you very much for picking that up [10:17] fwereade: i'm on leave for the rest of the week but would love to land a couple of branches. would you be up for a look? it's deployment constraints stuff [10:18] https://pastebin.canonical.com/93667/ [10:25] fwereade: can I get a follow up review of: https://codereview.appspot.com/10809043/ ? [10:25] mgz: if you can look at it as a second +1 that would be great, too [10:26] I'm trying to take over Rogs' branch for now, and then transition to having a machine agent that only talks via api [10:26] jam, sure [10:27] jam, don't burn too much time on rog's branch -- it's a slight detour from that goal, I think [10:27] jam, nice-to-have not must-have [10:28] fwereade: well, it changes the names for some apis, but that might be internal only. [10:34] fwereade: fantastic — I'll do the rest after. [10:36] jam: sure === _thumper_ is now known as thumper [11:22] codereview is being a right bint today... [11:33] fwereade: https://plus.google.com/hangouts/_/f497381ca4d154890227b3b35a85a985b894b471 [13:18] fwereade, you might know this: the ec2 implementation of StateInfo doesn't use DNSName(), but goes straight to the EC2 object's DNSName field. That saves it a query to the EC2 API... would it be a problem if I made it go through DNSName()? [13:20] jtv, that sounds like a problem with ec2.Instance.DNSName() not caching sensibly [13:20] jtv, so I think I'm fine with that [13:21] Thanks. I think it may be an optimization, because in a way, what StateInfo() does there is a parallel WaitDNSName(). [13:21] In fact, WaitDNSName() is another piece of code that so far appears as if the exact same loop would do for all providers. [13:22] jtv, yeah, like much of the environs code :( [13:22] True. :) [13:22] yeah, it's a bad interface [13:23] jtv, I hadn't even noticed that one though [13:23] By the way, do I understand correctly that StateInfo() is there to return *a* state server, not necessarily as many as it can? [13:23] jtv, it's currently there to return just one [13:23] Well some providers don't need to wait for DNSName. But in those cases, the generalized WaitDNSName loop would still do the right thing. [13:23] OK, thanks! [13:23] jtv, but we don't want to restrict it to that [13:24] I tried generalizing *all* StateInfo implementations, but the dummy one deadlocks. [13:24] jtv, gaah, blasted dummy provider... I guess it wasn't clear why? [13:24] Instead, I'm going with the approach of "utility re-usable implementation." [13:24] jtv, sgtm [13:25] jtv, in general, when you come across things like WaitDNSName, I'd really appreciate bugs tagged tech-debt [13:25] jtv, trying to enumerate them all in one go is clearly a non-starter [13:26] jtv, but being able to look at them will be useful [13:26] I didn't go too deeply into it, but my impression was that the dummy provider deadlocked on its two locks somehow, one of which might be needed only for bootstrapping or something. [13:26] Double-locking is nasty. [13:27] On first invocation, I think StateInfo will return only those state servers that have been defined *before* StateInfo was called (it doesn't discover newer additions) and that are among the first to have their DNS names. [13:28] jtv,+1 [13:29] Thanks! I'll get right to it. After this, the most complicated StateInfo implementation among the providers should be the dummy one. :) [13:47] jam, comment for consideration in upgrader,let me know yourthoughts please === wedgwood_away is now known as wedgwood [15:06] hm, unhappy bot [15:07] something caused both openstack and ec2 tetsts to timeout after 10mins [15:08] which is odd, as I merged into trunk and ran the suite locally before submitting [15:25] jtv,ping [15:36] fwereade: past his eod really, you may be best off emailing [15:53] fwereade: yes? [15:55] jtv, I asked in the review -- could you make the dns name different from the instance id? or have I misunderstood what's going on in that test? [15:55] jtv, but don't worry about it today unless you want to :) [15:56] fwereade: I'll just have a look at what you wrote there then, thanks. [15:56] But I think you're right. [16:10] Say... what time unit does utils.AttemptStrategy use? It seems weird that tests use 0.25e9 and 0.01e9 — why not something much smaller? [16:11] I believe 0.01e9 equals 10,000,000. [16:11] Probably nanoseconds, but even then... why not 1? [16:15] And why floating-point notation? === tasdomas is now known as tasdomas_afk [20:58] if tim pops in, tell him I'm just finishing cooking [21:01] morning [21:10] hey thumper [21:10] hi mgz [21:16] thumper, heyhey [21:16] hi fwereade [21:17] fwereade: I'm consolidating the bootstrap functions found in environs/*/state.go [21:17] into one place [21:17] as I wasn't going to copy and paste yet again [21:17] thumper, <3 [21:18] heh: current error: "file \"provider-state\" not found not found" [21:18] * thumper fixes too [21:19] thumper, ah, balls, I had a branch that fixed a bunch of those, and I could see the bits rotting one by one while I was distracted :/ [21:20] heh [21:20] this one was in localstorage/storage.go [21:33] mramm: hi, another issue that we need to communicate on (besides the packaging thing) - i saw a conversation in #juju where it was thought the reason for deprecating default-image-id was to make it easier for the developers [21:34] wallyworld: haha [21:34] haha indeed! it's easier for s to keep that setting [21:34] we need to finish up the sync tools story [21:35] so that none of that seems complicated anymore [21:35] yeah. and explain the rationale for various design decisions [21:35] yep [21:35] sounds like a good blog post [21:35] you are an ideas man [21:35] for the one blog post a month thing ;) [21:35] i'm going to blog about the simplestreams stuff when it is done [21:36] but there's more to do yet [21:36] cool [22:36] * thumper feels a tread being pulled [22:38] * thumper feels like screaming a little [22:38] copy and paste FTL [22:51] oh ffs [22:51] that is 2-3 hours down the drain [22:51] someone else has already landed this code [23:16] arosales: sorry, i'm late for the clal [23:16] i thought it was at 10 for unknown reasons [23:16] i'll get my headset now [23:16] davecheney, no worries in the hangout when you are ready [23:22] ok, i'm in the hangout now === wedgwood is now known as wedgwood_away [23:25] arosales: ok, i'm in the hangout now [23:41] * thumper afk to collect sick child