=== gary_poster is now known as gary_poster|away [02:09] I'm sure writing this test would be easier if I actually understood the jujuc commands [02:12] lots of good stuff on the merge proposals page [02:14] putcharm/env life/svc owners/status api/ssh key mgmt [02:22] wallyworld: back from the dentist yet? [02:22] yep [02:24] wallyworld: were you not well yesterday, didn't hear from you [02:24] thumper: no all good. just busy [02:24] head stuck in code [02:24] wallyworld: ok, why didn't you land the approved code? [02:24] busy further down the pipe? [02:24] yeah [02:24] * thumper nods [02:25] waiting till more stuff done in case of upstream tweaks [02:25] got about 5 branches with more tocome [02:25] how's it all going? [02:25] why so many? [02:25] hangout? [02:25] sure [02:25] https://plus.google.com/hangouts/_/d3f48db1cccf0d24b0573a02f3a46f709af109a6 [02:26] wallyworld: the party is over [02:26] so it says [02:27] hmmm. i'm in [02:27] is the link right? [02:27] just sent an invite [02:27] https://plus.google.com/hangouts/_/72cpjqoho8enpq0msp9kbjj06s [02:27] wrong link [02:48] thumper: lost you? [02:52] <_thumper_> wallyworld: sorry, lost connectivity for some reason [02:52] same habgout url :-) [02:52] hangout even === _thumper_ is now known as thumper [04:42] davecheney: say if we wanted a fallback SSH for Juju CLI on Windows, would go.crypto/ssh be suitable? not necessarily for interactive usage, but for bootstrapping [04:45] axw_: sure [04:45] i wouldnt' use it for histing an ssh server [04:45] by as a client, no worries [04:45] cool. [04:45] * davecheney celebrates a birthday while juju bootstraps [04:47] % juju add-relation w1 p1 [04:47] ERROR no relations found [04:47] fuck me [04:47] people people stop fucking with the haproxy charm [05:09] why, why does nothing work today ? [05:09] https://gist.github.com/davecheney/7905375 [05:09] what am I doing wrong ? [07:36] fwereade_: when you're awake, can you please take a look at https://codereview.appspot.com/28880043/diff/80001/state/environ.go#newcode90 and https://codereview.appspot.com/28880043/diff/80001/state/state.go#newcode492 [07:37] * fwereade_ will not be distracted from booking travel, but will look as soon as he can [08:00] morning all [08:01] morning dimitern [08:40] fwereade_, hey [08:41] fwereade_, i see you're reviewing - perhaps you can take a look at my 2 CLs as well? https://codereview.appspot.com/40160043/ https://codereview.appspot.com/40290044/ [09:31] dimitern, I'm just getting there, but I've got to go out for a couple of hours I'm afraid :( [09:31] dimitern, if someone else gets there first that's fine, otherwise they're atthe topof my list when I get back [09:34] fwereade_, sure, thanks [09:34] dimitern, probably won't make the standupbut I'll stick my headin incase anyone's still there [09:39] fwereade_, ok [09:49] any of the juju-core dev team interested in blogging about how juju uses mongodb? czajkowski asked if we would - they will federate it to the mongodb blog [09:50] happy to co-author but I don't know all of the cool stuff we are doing in detail [09:59] jamespage: i'm not entirely sure it's something to shout about - our usage is somewhat odd and not the most... efficient. [10:09] dimitern: i just sent another review of https://codereview.appspot.com/40160043/ [10:09] rogpeppe, thanks, looking [10:11] rogpeppe, I think you said to panic if curl==nil, no? [10:11] rogpeppe, or you're now suggesting to remove the whole test + the panic? [10:12] dimitern: yeah, but you don't need an explicit test - the panic will happen anyway as a matter of course, just like using any nil pointer [10:12] dimitern: yes [10:12] rogpeppe, ok then [10:12] dimitern: sorry if i wasn't clear [10:13] rogpeppe, it was one of "perhaps this or perhaps that" and I picked one :) [10:13] dimitern: np [10:47] fwereade_: dimitern: standup time [10:47] https://plus.google.com/hangouts/_/calendar/am9obi5tZWluZWxAY2Fub25pY2FsLmNvbQ.mf0d8r5pfb44m16v9b2n5i29ig [11:37] * dimitern lunch [11:54] dimitern: for when you get back. If PendingUpload is false by default, then old clients will not set it (and it will be nil), I'm guessing that works correctly for compatibility? I just wanted to verify that. [11:56] jamespage: interestingly, you can't just "go get launchpad.net/juju-core/..." because mgo is labix.org/v2/mgo redirected to launchpad.net, so you have to go check that bit out manually. Anyway, I should have a working juju dev tool there now [11:56] rogpeppe: does godeps help get you to the right versions? or does it just populate the file? [11:58] I guess godeps -u does the right thing. ISTR that I tried it in the past and it didn't work, but looks like it did this time [12:01] mgz: it would appear that 'go test' still requires that you have a ~/.ssh/id_rsa.pub :( [12:03] jam,: FWIW, go get labix.org/v2/mgo works just fine. [12:03] natefinch: not on the bastion host with firewalled/proxied egress [12:03] which is what james set up for us [12:04] natefinch: but you're right that it does usually work [12:04] jam: ahh, ok, I missed that context [12:04] jam: that was fixed and reintroduced several times I think [12:05] jam: godeps -u doesn't pull the right versions if they're not currently available [12:05] mgz: do you get 'strip' from build-essential? [12:06] it seems we have a part of the test suite that complains if there isn't an executable 'strip' in your path [12:07] mgz: ah, go bot *has* an ssh key because it has to to push stuff to LP, shame we don't enforce that stuff there. [12:07] well, installing build-essential got it for me, though we shouldn't really depend on it. And I thought strip wasn't safe on go binaries anyway (because it uses the debug info for reflect stuff) [12:08] jam: I get it from binutils [12:08] fwereade_: did you get your destroy-machine changes from 1.16 into trunk? [12:09] which doeswhich comes in via dpkg-dev [12:10] mgz: which certainly isn't what *we* should depend on for testing juju-core, right ? :) [12:11] well, it's fine(ish) with build-essential [12:12] mgz: but isn't that stuff to build C/C++ stuff, which Go doesn't need? [12:12] also, for someone with more experience with local provider, does 'juju destroy-environment local' properly nuke the Charm cache? There was discussion in #juju that it wasn't [12:13] yeeeas [12:22] jam, yes, they're in [12:31] jam, it should work even if PendingUpload is missing, when unmarshalled it will be false; that's the idea === gary_poster|away is now known as gary_poster [13:10] rogpeppe, take a final look at this before I trow it away, will you? :) https://codereview.appspot.com/40290044/ [13:10] *throw [13:10] dimitern: i've been on it :-) [13:10] dimitern: not far off posting the review [13:11] rogpeppe, cheers! [13:11] dimitern: i suggest evolving it not throwing it away, BTW... [13:11] rogpeppe, you mean devolving it like 40% and evolving another 15% [13:11] :) [13:12] dimitern: I don't think you would throw away much. The only bit that changes in "processPost" isn't it? [13:12] all of the work to move the auth stuff around you still need [13:12] dimitern: i think the changes (in charms.go anyway) will pretty much amount to throwing away 20 lines of code [13:13] and as rogpeppe mentions, the change is that you don't use a MultipartReader but something that checks the contet type and then reads the bytes into the temp file. [13:14] dimitern: we should chat with gary about the change too [13:14] yeah [13:15] i'm looking into it to minimize the damage [13:15] dimitern: arguably you just get ird of MultipartReader and go straight to the application/zip handler [13:26] dimitern: reviewed [13:27] rogpeppe, thanks [13:28] dimitern: rogpeppe: any idea why "juju deploy ubuntu" in trunk against a local 1.16.4 environment would give "service already exists" ? I'm seeing failure to deploy with trunk, but success with /usr/bin/juju ==1.16.4 [13:28] jam: what does juju status show? [13:28] rogpeppe: juju status shows only machine-0 running [13:28] and then juju deploy gives me "service already exists" [13:29] jam, no idea off hand [13:29] dimitern: that does seem odd [13:30] jam: ^ [13:30] dimitern: yeah, since you haven't actually finished what you're working on, I would have thought deploy in trunk is essentially unchanged [13:30] but it definitely seems repeatably broken :( [13:30] jam: yeah, i'd have thought that too [13:30] jam: i'd put some printfs into trunk and see what's going on... [13:31] jam: what does deply --debug print? [13:31] jam, it is unchanged [13:38] rogpeppe: nothing particularly helpful in this case [13:39] rogpeppe: you can see the --debug output here: https://bugs.launchpad.net/juju-core/+bug/1259925 [13:39] <_mup_> Bug #1259925: juju destroy-environment does not delete the local charm cache [13:40] rogpeppe: interestingly, after having called "juju destroy-service -e local ubuntu" and then trying again I get a slightly different (but still unhelpful) log: http://paste.ubuntu.com/6556054/ [13:40] so now it is clearly not trying to upload the charm (good), but it still says the service already exists (bad) [13:41] jam: what do you see if you connect directly to the mongo instance and look in the settingsRefs and services collections? [13:41] rogpeppe, it seems you edited https://docs.google.com/a/canonical.com/document/d/1TxnOCLPDqG6y3kCzmUGIkDr0tywXk1XQnHx7G6gO5tI/edit#heading=h.t7svtxl846ha and most of the implementation got lost [13:42] dimitern: oops, will check [13:43] rogpeppe, ah, sorry, you just reformatted it to the top [13:43] rogpeppe, perhaps we can remove the footnotes and the history and leave only the implementation description [13:43] dimitern: i did, but i think i did miss some stuff [13:44] dimitern: i'd do that [13:44] rogpeppe, cheers [13:44] rogpeppe: "mongo localhost:37017/admin" doesn't actually let me do anything, am I spelling somethingwrong? (it gives me failures running 'whatsmyurl") [13:44] dimitern: it's all still available [13:44] dimitern: even if we remove it from the current version [13:44] rogpeppe, yeah, good point [13:44] jam: you probably need to connect in auth mode [13:45] rogpeppe, it actually much easier to handle binary post uploads and to test them in go than in javascript it seems [13:46] dimitern: you chatted to gary? [13:49] rogpeppe, just doing so now, as you see :) [13:49] dimitern: :-) === sidnei` is now known as sidnei [13:56] dimitern: i updated the charm upload doc to cut out all the old stuff [13:56] rogpeppe, cheers, looking [14:22] lunch [14:23] gobblegobble [14:23] rogpeppe, URL vs Url comes from my C# days I guess :) and I didn't like it one bit then, glad to unlearn it! [14:37] rogpeppe, let me know when you're back and when you'd like to talk about next steps [15:12] jcsackett, sinzui: AFAICT, the "Build Failure Analyzer" plugin does expose the failure type into the API. I am disappointed. [15:12] :( [15:13] s/does/does *not*/ [15:17] sinzui: If you have a chance, I'd like to do a pre-imp on the i386 thing. [15:17] natefinch: back [15:17] natefinch: hangout? [15:17] rogpeppe, sure [15:18] natefinch: https://plus.google.com/hangouts/_/calendar/am9obi5tZWluZWxAY2Fub25pY2FsLmNvbQ.mf0d8r5pfb44m16v9b2n5i29ig [15:20] did I miss you? Sorry, my wife asked for help at an inopportune time [15:21] hmm.... seems to not be joining... weird [15:21] abentley, okay [15:23] sinzui: https://plus.google.com/hangouts/_/76cpihrgnbqj3fqb0hu5umjbso?authuser=1&hl=en [15:23] natefinch: my machine display driver has just died [15:23] natefinch: i need to reboot, sorry [15:32] abentley: ack. i share your disappointment. [15:39] gah, just finished with https://codereview.appspot.com/40290044/ and rogpeppe disappeared [15:39] he's here [15:39] in a hangout with me [15:40] send him the link pls nate_finch [15:40] sure [16:13] grrr [16:31] rogpeppe, review poke [16:31] dimitern: ah, looking [16:41] dimitern: LGTM [16:41] rogpeppe, cheers [16:45] rogpeppe, you're sure about defer req.Body.Close() ? req.Body is a ReadCloser [16:46] dimitern: yeah [16:47] dimitern: from the docs for Request: [16:47] // The Server will close the request body. The ServeHTTP [16:47] // Handler does not need to. [16:47] rogpeppe, yeah, was just about to say that [16:47] :) good to know [16:54] I am losing a fight with lbox. It complains I don't have vet. This probably relates to the fact I have a most of golang now in my local path to do cross-compiling [16:57] sinzui: if in doubt, you can do what i do, which is have an entirely separate golang repo and GOPATH. then go get lbox with GOPATH set to that [16:58] sinzui: with CGO_ENABLED to true or unset [16:58] rogpeppe, I think I have done that [16:59] sinzui: hmm [16:59] well GOROOT is pointing to system installed path. that looks like what is blocking me from go install [16:59] what do you see if you do go get code.google.com/p/go.tools/cmd/vet ? [17:00] rogpeppe, go install code.google.com/p/go.tools/cmd/vet: open /usr/lib/go/pkg/tool/linux_amd64/vet: permission denied [17:00] sinzui: BTW there's nothing in lbox itself that requires govet [17:00] ^ obviously not my intent [17:00] :( [17:00] lbox propose -cr -for=xxx seems to think I need it [17:01] sinzui: it's called by the .lbox.check script [17:02] sinzui: if you're using the system installed go, i'm surprised that vet isn't installed [17:02] maybe I am a victim of trusty [17:03] * sinzui looks at packages [17:06] sinzui: i have to say i haven't used the system-installed go much - i usually pull the mercurial archive [17:07] sinzui: what if you chmod a+w /usr/lib/go/pkg/tool/linux_amd64, then run the go install command again? [17:07] ah, I will move my gopath to the start of my path to see if the right binaries are found [17:09] sinzui: unfortunately there's a special case in the go tool for installing tools [17:10] sinzui: it always installs them to $GOROOT/pkg/tool/$arch [17:10] rogpeppe, I don't want to touch /usr. I want to work in my $GOPATH. I may need to build out more go in my work dirs, or just remove the system go for now [17:10] sinzui: i suggest downloading the go distribution and having an entirely separate thing [17:11] rogpeppe, I think I did that to setup cross-compiling. I see vet in the src, but I don't think everything was built and installed [17:12] sinzui: what does "go env" print for you? [17:13] rogpeppe, informative: http://pastebin.ubuntu.com/6556978/ [17:13] rogpeppe: the Tailer is in again *phew* [17:14] rogpeppe: and me is off for dinner, but will look again later for a possible review result ;) [17:15] sinzui: if you want to build go vet without sudo, you'll need to use a go binary from a different go root [17:16] agreed [17:16] still I wonder about where vet went to [17:16] sinzui: because "go get code.google.com/p/go.tools/cmd/vet" will always install to /usr/lib [17:16] sinzui: yeah, i'm surprised it didn't come with the package [17:27] rogpeppe: back, sorry.... turns out we had the time wrong, so were a half hour early and had to wait around. [17:27] nate_finch: that's ok [17:28] nate_finch: just on a review currently but we can continue in a bit if you'd like [17:28] nate_finch: (i'll need to reboot again though :-[) [17:28] yeah, no problem, sounds good [17:28] (except for the reboot :) [18:29] TheMue: you have a review [18:30] nate_finch: that took longer than i thought it would, sorry, and now it's getting a bit too late [18:30] nate_finch: i've updated the Juju HA Notes document a reasonable amount [18:30] rogpeppe, yeah, I figured [18:31] cool [18:32] nate_finch: since, you've been dealing closely with starting mongo recently, how would you feel about doing EnsureMongoServer ? [18:32] nate_finch: it would replace the existing cloudinit shell script logic [18:32] nate_finch: (eventually) [18:32] yeah, that's what I was thinking [18:33] nate_finch: cool === nate_finch is now known as natefinch [19:28] hi negronjl, i've just proposed a branch for merging into the mongodb charm. you seem like the right guy to review it and i'd like your feedback. [19:29] bac: I'll review it in a few ... thx for the heads up [19:29] np [19:44] I think trusty has hexed me. I am on go 1.2 now. [19:54] natefinch, do you have a few minutes to review https://codereview.appspot.com/41030044 [19:56] sinzui, sure [20:01] mramm: morning, there is no hangout associated with the meeting [21:33] fwereade_: hi [21:34] wallyworld, hey dude [21:34] did you want a quick chat about that review? [21:34] wallyworld, damn, I was meant to have thought more about something before I talked to you ;p [21:35] wallyworld, yes, I will have to figure it out as I go along, just a sec ;) [21:35] ok [21:35] https://plus.google.com/hangouts/_/76cpiot72i7502oceu38mint0k [21:40] fwereade_: https://codereview.appspot.com/39790043/ === gary_poster is now known as gary_poster|away === _mup__ is now known as _mup_ [23:20] davecheney: hey [23:20] wallyworld: o/ [23:20] i have a go yaml question [23:21] shoot [23:21] i have a long string with a space in it. when go yaml marshalls it, it splits the string over two lines. this is bad [23:21] since it breaks cloud init [23:22] wallyworld: so it's converting it to the | long form ? [23:22] long form? [23:22] you can do [23:22] descriptoin: some string [23:22] or [23:22] description: | [23:22] some really long string [23:22] that rivals war and peace [23:22] it's doing this.... [23:23] #cloud-config [23:23] ssh-auth-keys: [23:23] - some really long string [23:23] some more of the string [23:23] hmm, that smells like a bug [23:24] can you email me the deatils [23:24] or something [23:24] and i'll make a test case [23:24] then i can fix the bug and have it reverted the next day \o/ [23:24] sure, will do. i want the whole string on the one line starting with the - [23:24] what? [23:24] did your --- fix get reverted? [23:28] wallyworld: i'm guessing the key you're having problems with is your own [23:28] so i guess you can't paste it :) [23:35] davecheney: well, it's the public portion [23:35] but the difference is that now i'm adding a key comment [23:35] which is ppending to the key blob with a space [23:36] and the yaml marshalling is splitting the string at the space [23:36] but i need it all on one line [23:36] you sure do [23:36] that is where I thought it was braking [23:36] * davecheney adds a test case