/srv/irclogs.ubuntu.com/2014/05/28/#juju-dev.txt

=== revagomes_ is now known as revagomes
bodie_nice, got my gojsonreference reimplementation built and passing tests00:20
bodie_now need to get tests on gojsonschema passing again00:21
jcw4bodie_: o/00:24
=== thumper-otp is now known as thumper
* thumper takes a big breath00:35
* thumper exhales00:35
waiganithumper: davecheney: are we just using the standup channel?01:00
thumperwaigani: sure01:00
davecheneyyup, see you back in the hangout01:01
axwmorning all01:04
wallyworld_morning01:07
perrito666man looking at all the discussions that include menn0 and thumper in mailing lists is like reading a webcomic, we need to wait 12 hs between each episode01:48
davecheneyperrito666: welcome to canonical01:49
waiganiI've added some user docs and apparently I need to let evilnick know about them. What is the best way to do that?01:51
waiganithumper: $ juju user detail foobar; #output: username: foobar01:54
waiganithat is one useful cmd!01:54
thumperwaigani: exactly, which is why we want display name :)01:54
thumperand later... groups and stuff01:55
thumperwaigani: we probably also want 'date created' etc, and other items not yet in the document01:55
waiganithumper: i'll throw in anything i can find and we can then cut back01:55
waiganiexcept maybe password ;)01:55
thumperwaigani: add in some TODOs for when we modify the doc01:56
sinzuithumper, I have deployed with the last built juju twice.02:03
thumperand?02:03
sinzuithumper, I don't see the issue universally reported by ci's tests02:03
sinzuiI also know that there were no stale jenv files because I reset all the JUJU_HOMEs a hour before02:04
thumpersinzui: using upload tools?02:04
sinzuinever for cloud tests. only local host is allowed to use upload tool02:05
sinzuithumper, I am reading all the shell env hoping to find a 1.18 invocation of juju that could cause the problem02:06
thumpersinzui: gee, wouldn't it have been useful to have a stack trace there...02:12
sinzuiyes it would. I wish I could trust juju not to reveal keys when in --debug02:13
sinzuithumper, I was trying to get you such a stack trace when the bugger succeeded02:13
wallyworld_davecheney: this makes me happy. http://juju-ci.vapour.ws:8080/job/walk-unit-tests-ppc64el-trusty-devel/    ppc tests more reliable than amd64 right now02:22
davecheneywallyworld_: it makes me happy as well :)02:23
wallyworld_amd64 failures are down to random io timeouts etc02:24
thumper\o/02:27
thumpercongrats davecheney and wallyworld_02:27
davecheneythumper: and axw02:28
davecheneyhe saved our bacon02:28
wallyworld_thumper: axw as well02:28
thumperand axw :-)02:28
wallyworld_he did a lot02:28
axwwinning02:30
axwthe bot is way happier lately too02:30
axwglad the work has been useful02:30
davecheneyi noticed02:30
axwevery time I see a merge attempt email I have a heart attack, thinking there's going to be a new intermittent failure02:31
davecheneyaxw: same02:31
davecheneynegative conditioning02:31
axwjust need to make sure everyone does this once in a while ;)02:31
thumperaxw: it has been incredibly valuable, kudos02:33
axwdavecheney wallyworld_: the ppc64 test instance is nailed up right? I wonder if that has anything to do with stability02:33
axwas opposed to amd64 which is spun up/down each time02:33
wallyworld_axw: yeah02:33
davecheneyaxw: well, when maas works on ppc then maybe we can introduce that element of randomness02:34
davecheneyi can't say it's high on my list02:34
axwheh :)02:34
sinzuithumper, I am convinced there is a bug test code that ensures the right version of juju is bootstrapped.02:50
sinzuithumper, please don't revert02:50
thumperkk02:50
sinzuithumper, I found the problem. I don't know how ti fix it yet, but I was able to feed 1.20-beta1 into the test suite and find the bad method02:57
thumperoh?02:58
davecheneythumper: https://github.com/juju/testing/pull/403:20
davecheney*cough* when you have a sec03:21
* thumper looks03:21
wallyworld_axw: was otp before. if i can get juju tests passing with mongo 2.6, initially that will be on a nailed up ec2 instance but then we could switch to an ephemeral instance and see how well it works03:24
axwwallyworld_: okey dokey, sounds good03:25
wallyworld_got some fundamental test failures to sort out. once root cause found, should then just work03:26
wallyworld_i can bootstrap an env with mongo 2.6, just not get passing tests03:26
davecheneywallyworld_: did it build properly with TLS03:27
davecheney?03:27
wallyworld_yeah03:27
axwbbs, school run03:27
davecheneyi've heard you have to sacrifice a newborn to make that happen03:27
wallyworld_seemed to work ok03:28
davecheneymaybe you need to add more children03:28
wallyworld_could bootstrap a system03:28
wallyworld_test failure related to a permission problem with listDatabase() ops and such03:28
wallyworld_bitch to debug remotely so building locally03:29
thumperdavecheney: I'm just about to go and have a coffee... but I'm curious, what was the problem with the code matching yesterday?03:30
menn0thumper: it's pretty funny, in a not funny kind of way :)03:32
sinzuithumper, I have a success. I will attempt to erase CI's recent memory of this revision to restart all the tests03:39
davecheneythumper: SimpleMessage, the message isn't a string, it's a regex04:20
davecheneybecause i had included parethesis in the mathcing text04:20
davecheneysadface04:20
thumperdavecheney: https://github.com/juju/errors/pull/204:21
thumperdavecheney: ahh..04:21
thumperaxw: reflect.DeepEqual does work04:22
thumperaxw: it really just isn't what I tend to think of when wanting identity04:22
davecheneythumper: if you are happy then I am happy04:22
thumperperhaps I just have to accept it04:22
davecheneyi know you've explained to me a bunch of times04:22
davecheneybut I still don't understand what you need04:22
davecheneyor what it does04:22
davecheneyso if you're happy04:22
davecheneythen i'm happy04:22
thumperdavecheney: the tests pass, so I'm happy04:22
davecheneycase closed04:23
davecheneythumper: i'll take quick peek at what reflect.DE does for interface types04:23
thumperdavecheney: if there is a short circuit success pass then I'm extra happy04:23
thumperbut in reality, this function isn't called all that often04:24
thumperso it will never be any form of bottle-neck04:24
sinzuithumper, deploy is fixed, bug upgrade has a panic https://bugs.launchpad.net/juju-core/+bug/132393704:24
davecheneythumper: it's even nicer than that04:24
davecheneyteo secs04:24
thumpersinzui: upgrade panics?04:24
thumpersinzui: ah... new version04:24
thumperarse04:24
thumperdamn...04:25
davecheneyhttp://golang.org/src/pkg/reflect/deepequal.go?s=3380:3419#L12804:25
thumpersinzui: ok, I have a plan04:25
thumpersinzui: we keep the code, but revert the version number to 1.19.304:25
davecheneyreflect.ValueOf returns a reflect.Value that represents the concrete type of the interface value04:25
sinzuithumper, the details imply simple streams...because 1.18.1 canno even bootstrap when it discovers that version exists04:25
thumpersinzui: we keep the behaviour of the numbers until 1.20.0 has been released04:25
sinzuithumper, yeah. I was thinking the same04:25
thumpersinzui: really? hmm...04:26
thumperwallyworld_: thoughts?04:26
sinzuithumper, I can only guess. I am tired04:26
thumperwallyworld_: finding tools versions where versions aren't parsable by old code?04:26
wallyworld_hmmm04:26
thumpersinzui: I'll submit a patch to make the current version go back04:26
thumpersinzui: because otherwise 1.18 clients will panic when getting a new version number it can't handle04:27
davecheneyso reflect.DE gets the underlying values, and comparest their types,04:27
wallyworld_thumper: i think we need current-1 to be able to find tools fir current to allow upgrades04:27
sinzuithumper, could the - be the issue? could 1.20beta1 be acceptable?04:27
davecheneywhich is what we were doing by snarfing in the first word of the interface struct04:27
thumpersinzui: this will be the cause of the upgrade failure04:28
thumpersinzui: let me fix it04:28
jimmiebtlrIt looks like any writes to command context (Infof, Verbosef) go to stderr, is this expeceted?04:30
thumperjimmiebtlr: yes04:32
thumperjimmiebtlr: some commands have strict format output that goes to stdout04:32
thumperjimmiebtlr: we wanted to make sure that stdout says parsable by tools expecting that strictness04:32
thumperjimmiebtlr: so extra info goes to stderr04:32
jimmiebtlrok04:33
thumperand to be consistent, we always send to stderr04:33
jimmiebtlrso for instance from the add-machine command would the output "created machine X" be expected to output to stderr or stdout?04:34
thumperjimmiebtlr: I'd expect it to go to stderr for the above reason04:35
jimmiebtlrok, thanks04:35
thumperRietveld: https://codereview.appspot.com/9357004604:41
thumperwallyworld_, axw, sinzui, anyone... ^^^^04:41
thumperfixes the broken upgrades of trunk04:41
wallyworld_ok04:41
thumperby reverting version from 1.20-beta1 back to 1.19.304:41
axwdoh04:42
thumperyeah...04:42
thumperthe 1.18 agents need to be able to parse the new version updated in config without dying :-)04:43
thumpermy boo-boo04:43
sinzuithumper, when I release 1.20.0 next month. I will then set the version to 1.21-alpha1?04:44
thumpersinzui: yes, or 1.21-dev104:45
thumperwhat ever flicks your switch04:45
thumperalpha, bravo, charlie, delta, echo, ...04:45
thumperfinish with a foxtrot04:45
sinzuialbatros04:46
thumpersinzui: you could change the naming scheme with every release :-)04:46
thumper1.21 - birds04:46
sinzuiI am off to bed. CI is actually just finished the last revision. the 1.18.x upgrade tests were true failure. canonisatacks failure was swift related04:47
thumpersinzui: thanks04:47
sinzuioh, wallyworld_ I think I need to revert the ppc64el deb -> ppc64 tgz tool. This failure happen after to remove support for the ppc64el tool http://juju-ci.vapour.ws:8080/job/local-deploy-trusty-ppc64/10/console04:49
wallyworld_looking04:50
wallyworld_sinzui: what's inside the deb? ++ wget -q http://juju-ci.vapour.ws:8080/job/publish-revision/lastSuccessfulBuild/artifact/juju-core_1.20-beta1-0ubuntu1~14.04.1~juju1_ppc64el.deb04:53
wallyworld_ppc64el.tar.gz or ppc64.tar.gz04:54
wallyworld_should be the latter for juju to find it04:54
wallyworld_if i understand the issue correctly04:54
* bigjools wonders what thumper has been doing to get an icky taste in his mouth05:02
thumper:P05:02
davecheneybigjools: management05:17
bigjools+105:17
davecheneybigjools: sorry, you set that one up, I just needed to take a run up05:29
bigjoolsdavecheney: quite all right05:29
menn0i've been deep diving in to how upgrades work and I've got a handle on most things05:45
menn0there's just one bit I'm not sure of05:46
menn0has anyone got 5 mins to help?05:46
jamfwereade: axw: are we meeting to discuss bug #1215579 ?06:02
_mup_Bug #1215579: Address changes should be propagated to relations <addressability> <reliability> <juju-core:In Progress by axwalk> <https://launchpad.net/bugs/1215579>06:02
jamI don't see dimitern yet06:02
axwjam: I was about to join, but I guess we should wait for dimiter06:02
jamI'm there, but just to be around if someone joins06:07
jamaxw: fwereade is here now06:09
axwokey dokey06:09
=== Ursinha-afk is now known as Ursinha
=== vladk|offline is now known as vladk
wwitzel3fwereade: ping08:08
fwereadewwitzel3, pong08:08
wwitzel3fwereade: you have some time to discuss presence things?08:09
fwereadewwitzel3, sure :)08:09
fwereadewwitzel3, moonstone?08:09
wwitzel3fwereade: k, let me grab my coffee and I'll be in moonstone.08:09
* fwereade does same08:10
vladkjam, fwereade: networker API facade: https://codereview.appspot.com/9860004708:16
voidspacemorning all08:18
rogpeppevoidspace: hiya08:19
voidspacerogpeppe: hey roger08:22
rogpeppevoidspace: how's tricks?08:22
voidspacerogpeppe: not bad, although today's task is working out why turning on replica set for tests makes the "no reachable servers" problem about a million times worse08:23
voidspacerogpeppe: so not much fun :-)08:23
voidspacerogpeppe: how's jazz-land?08:23
wwitzel3voidspace: morning08:25
voidspacewwitzel3: hey, morning08:26
voidspacewwitzel3: sleep any better?08:26
wwitzel3voidspace: sadly no08:26
voidspacewwitzel3: :-(08:27
voidspaceI thought being around this early wasn't a good sign08:27
voidspacegrabbing coffee, back in a minute08:28
wwitzel3voidspace: I was able to get a nap in the afternoon yesterday for about an hour and I tossed and turned for about 5 hours this evening for maybe 2 hours of total sleep.08:29
wwitzel3voidspace: I'll probably take a sleep aid tonight, so I don't become a zombie.08:30
voidspacewwitzel3: yeah, sounds like a good idea :-/08:35
jamfwereade: wrt https://code.launchpad.net/~jimmiebtlr/juju-core/add_machines_tag/+merge/221013 are we wanting to expose things as tags to the CLI?09:19
fwereadejam, certainly not09:25
fwereadejam, not sure where that came from09:25
jamyeah, I didn't see an associated bug, and you've mentioned to me that we didn't want it09:25
fwereadejam, we have a bug that debug-log uses tags (grarrrr)09:25
fwereadejam, I assigned it to thumper but forgot to mention it to him, I should do that09:25
jamI'm not personally all that happy with bare numbers for machines, but if we want to not use tags, then we shouldn't09:25
jamvladk: I have some feedback for https://codereview.appspot.com/98600047/09:27
jamI haven't reviewed everything, but I did give a bit of a "here are some stuff that we need to iterate one"09:28
jamon09:28
jamfwereade: for changing Login so that it goes via "https://host:port/ENVUID/api" sort of URLs. Would you be averse to using a different Mux? One that was path aware? (like github.com/gorilla/pat) ?09:31
jamI'm not sure I like Pat, as it looks to be doing a separate global hash map for extra data09:32
jam(It at least pulls in gorilla/context which does that exact thing)09:32
fwereadejam, I don't have an opinion; am happy to follow your judgment on that09:32
jambut it seems a bit of "we could roll our own" that would be less flexible in the long term09:32
jamthough our needs today are very modest09:33
=== luca__ is now known as luca
fwereadejam, I'm all for pulling in well-defined battle-tested solutions from elsewhere09:37
fwereadejam, hand-hacking the perfect tool with zero fat is a beguiling approach but by no means necessarily optimal09:37
jamfwereade: bringing in tons of dependencies and their own cruft isn't always great, either. but Mux seems like something there are a few possible solutions around.09:38
fwereadejam, sure, some degree of taste and sanity needs to inform these decisions09:39
jamfwereade: I found http://www.alexedwards.net/blog/a-mux-showdown though it is interesting that now Pat is gorilla/pat and imports gorilla/mux, so I'm not sure why to use Pat over Mux if we go that route09:41
jamweird, apparently there is also https://github.com/bmizerany/pat09:43
jamwhich seams a bit lighter09:43
jamfwereade: for URLs, should it be UUID or Tag ?09:59
jameg: /environ-dead-beef/api/09:59
jamor09:59
jameg: /dead-beef/api/09:59
jamor possibly09:59
jameg: /environ/dead-beef/api/09:59
jamit feels a bit like putting the environment- prefix in the URL isn't needed.10:00
jam(I should be clear that the tag has the full environment- prefix, I always want to spell it with the short name)10:01
=== vladk is now known as vladk|offline
voidspaceaxw: ping10:06
voidspaceif you're still around10:06
axwvoidspace: heya10:06
axwI may disappear soon, but I am here now10:06
voidspaceaxw: hey, you wrote the code in this CL10:06
voidspacehttps://codereview.appspot.com/88350043/patch/40001/5000510:06
* axw hides10:06
voidspacehaha10:06
voidspaceno, it's all good10:06
voidspaceit includes the code that *doesn't* enable HA for local provider10:07
axwright10:07
voidspacethe problem that necessitated that appears to have disappeared10:07
voidspaceso I'd like to just enable HA for local provider10:07
voidspaceshouldEnableHA includes the following comment10:07
voidspace+// Eventually this should always be true, and ideally10:07
voidspace+// it should be true before 1.20 is released or we'll10:07
voidspace+// have more upgrade scenarios on our hands.10:07
voidspaceaxw: as I'm going to remove shouldEnableHA *before* 1.20 (i.e. now)10:08
voidspaceis it correct that I don't have to consider any *additional* upgrade scenarios - the existing code will handle everything10:08
axwvoidspace: correct10:08
voidspaceaxw: awesome :-)10:08
voidspacethanks10:08
axwvoidspace: I assume you were able to reproduce the bug before, but can't now?10:08
voidspaceaxw: wallyworld was able to reproduce before and can't now10:09
axwah great10:09
axwsweeeet10:09
natefinchvoidspace: nice!10:09
voidspaceaxw: so we'll enable it - and then I'll email juju list and warn people to try it10:09
voidspacenatefinch: yep, morning :-)10:09
natefinchvoidspace: morning :)10:09
axwthanks, SGTM10:09
axwvery much10:09
voidspacenatefinch: enabling replica sets for tests seems to be more problematic, but I'll start digging into that once this mp is ready10:10
natefinchvoidspace: we might have to punt on that if it gets too big, but we should at least give it the old college try before giving up.10:11
voidspacenatefinch: yep10:11
voidspacenatefinch: although it will be annoying to have a production check for replica sets merely to accomodate the test environment10:11
natefinchvoidspace: well, I think we can do it a different way.  Just mock out a function in test or something.10:12
voidspacenatefinch: ah yes10:13
fwereadejam, I think the API can just be uuid10:15
fwereadejam, sorry, the *URL* can just have the UUID10:15
jamright10:16
jamI understood you10:16
=== vladk|offline is now known as vladk
jamdimitern: are you back ?10:45
jamstandup ?10:45
dimiternjam, yes, brt10:46
=== Ursinha is now known as Ursinha-afk
jamfwereade: are you coming to our standup today ?10:46
fwereadejam, why not :)10:47
wwitzel3fwereade: do you know the distinction between agent-state and agent-state-info? in both the cases of ensure-availability and status .. agent-state-info seems to have the correct information, even though agent-state is reporting "down".10:48
fwereadewwitzel3, the SetStatus has a status "enum", and an info string, and we tacked on a map for more info later10:49
wwitzel3fwereade: I'm wondering if having the AgentPresence check inspect agent-state-info for hints about the status (ie is it really down?) might be ok?10:49
fwereadewwitzel3, the difficulty is that agent-state: down is hacked in in the status api, and we don't send the real value of agent-state-info down in status10:50
fwereadewwitzel3, I don't *think* it would help10:50
wwitzel3fwereade: ahh ok10:50
fwereadewwitzel3, agent-state might be a better bet, though10:50
fwereadewwitzel3, if it's never yet set a value, it's probably not there yet10:51
wwitzel3fwereade: right, makes sense10:51
fwereadewwitzel3, although even that is imperfect, because the pinger will start a bit before the machiner gets round to setting started10:51
wwitzel3fwereade: good news is the rename worked just fine, compiled and tests pass10:51
fwereadewwitzel3, *and* we should expect that the set of statuses, and when they're set, will change as well10:51
fwereadewwitzel3, cool10:52
=== vladk is now known as vladk|offline
=== vladk|offline is now known as vladk
axwfwereade: it's in a bit of a shoddy state, but I've got addresses flowing end to end now11:15
axwfwereade: I modified AliveHookQueue to do something similar to changedPending- does that sound terrible?11:16
axwfwereade: AliveHookQueue selects on another channel, and then sets a flag to say that it wants to send a relation-address-changed hook next11:16
voidspaceaxw: that was quick! Thanks.11:20
axwno worries11:20
voidspaceNice when a CL is mostly code removal.11:21
axwdeleting code is one of my favourite things11:21
voidspace:-)11:21
voidspace"if you think writing code is awesome you should try deleting code!"11:22
axwheh :)11:22
bodie_:)11:23
bodie_I deleted a bunch of code yesterday... felt great11:23
bodie_I kind of get the appeal of dentistry now, too...11:23
voidspacehah11:23
voidspaceI kinda like my teeth11:24
perrito666morning11:25
voidspaceperrito666: morning11:26
wwitzel3perrito666: morning11:26
=== vladk is now known as vladk|offline
=== Ursinha-afk is now known as Ursinha
=== vladk|offline is now known as vladk
=== vladk is now known as vladk|offline
voidspacerebooting to get local provider working again :-/11:48
voidspaceERROR cannot use 37017 as state port, already in use11:48
hazmatvoidspace, ps aux | grep mongo11:54
voidspacehazmat: I had this yesterday, killed mongo - still got the same error11:55
hazmatvoidspace, do see port 37017 in output of sudo netstat -tulpn11:56
voidspacehazmat: not after rebooting :-)11:57
voidspacehazmat: I'll try next time, happened yesterday too11:57
hazmatvoidspace, i'd try juju destroy-environment --force  on it11:57
voidspacethanks11:59
natefinchyeah, there's a few things that aren't always cleaned up perfectly in the local provider.... we should probably do some work to try to make it more reliable, because it does tend to get stuck like that, whether it's mongo or lxc or whatever.   You know, when we have spare time ;)12:02
voidspacenatefinch: local provider still seems to work with my changes, and I have an LGTM12:04
voidspacenatefinch: so merging and switching to looking at tests after lunch12:04
natefinchvoidspace: awesome12:05
=== vladk|offline is now known as vladk
hazmatvoidspace, if its not working for you yet, i'm up for doing a g+ screenshare to debug12:09
* hazmat reads backlog and realizes its already working12:09
hazmatcool12:09
hazmatrogpeppe, do you still have that api parser code handy? the one that extracted an api listing from the src?12:17
rogpeppehazmat: yes12:17
rogpeppehazmat: but recent changes mean that it's not going to work for much longer (assuming it does still)12:17
hazmatrogpeppe, bummer12:18
rogpeppehazmat: the API is not longer statically determinable12:18
rogpeppes/not/no/12:18
hazmatthe refactoring that's been going on in api makes it much harder to determine what the full api is and identify the delta for client construction12:20
hazmati guess i should be using godoc instead of src.. ala http://godoc.org/launchpad.net/juju-core/state/api12:22
sinzuijam, natefinch fwereade Can someone look into this regression, bug 132411012:49
_mup_Bug #1324110: go get cannot find github.com/juju/testing/logging <ci> <packaging> <regression> <juju-core:Triaged> <https://launchpad.net/bugs/1324110>12:49
jamsinzui: I see github.com/juju/testing just fine, are you sure you are "go get" ing all the new dependencies?12:51
jampeople have been breaking out a lot of the core code into libs12:51
jamah, hmm... lo testing/logging12:52
jamthat I don't see12:52
sinzuijam, CI runs this12:52
sinzuigo get -v -d launchpad.net/juju-core/...12:52
jamsinzui: I think the bug is that something was removed and we didn't notice because go build leaves the old artifacts around12:52
sinzuiand it say github.com/juju/testing/logging is missing I see testing/ but mote testing/logging12:53
frankbansinzui, jam: this can be related to my current change in https://github.com/juju/testing/pull/5 . I am also waiting on a review for https://codereview.appspot.com/92660046 . After that, I can fix the dependencies on core12:53
jamsinzui: sure, I think it used to exist there, and it got moved, and some imports moved with it, but we missed this one because everyone running the test suite still had it from before it was moved12:53
jamfrankban: the issue is that trunk is currently already broken12:53
sinzuijam, understood,12:53
jambecause it imports a module12:54
jamand updated godeps12:54
jamto point to one that didn't have it anymore12:54
jcw4fwereade, mgz, natefinch : on a whim inspired by natefinch I added an FAQ yesterday.  Are 3 FAQ's worth including? I expect it to grow: https://codereview.appspot.com/98650043/12:55
bodie_morning john12:56
jcw4bodie_: o/12:56
jcw4fwereade: I think this one is ready to go too: https://codereview.appspot.com/92630043/12:57
mgzjcw4: well, that's useful info at least12:59
jamfrankban: can you either fix the import or revert the godeps so that trunk can build again?12:59
mgzI kind of think it's stuff that should just be in HACKING rather than faq form12:59
jcw4mgz: I'm open to whatever seems best13:00
mgzjcw4: landing as is seems best for now, as I'm also rewriting things13:01
jam 2783 Francesco Banconi2014-05-23 [merge]13:01
jam      [r=gz] Update the github.com/juju/testing dependency.13:01
jamis probably the one that broke ups13:01
mgzeasy to bring different bits together later13:01
jcw4mgz: excellent13:01
mgzjam: yeah, I've seen that13:01
mgzI'll fix13:01
jammgz: should we change the bot to always do a cleanroom build? so stuff like this can't land13:02
mgzmaybe... I actually need the go get to work... which requires tip juju/testing to not be borked I think13:02
jamI don't think it would add huge amounts of compile time overhea13:02
jamd13:02
mgzjam, well, my bot-test just broke on it13:02
jammgz: bzr merge -r 2783..278213:02
mgzso... EOW13:02
jamEnd of Week ?13:02
mgzHopefully!13:02
jammgz: its only Wednesday :)13:03
jammgz: or you mean the github version will do cleanroom builds13:03
mgzjam: right, git on jenkins is from scratch each time at present13:03
natefinchjcw4: LGTM'd13:03
jcw4natefinch: ta13:04
mgzhm, go get really screws things13:13
mgzif any import in any tip of a dep is changed, it will fail13:13
frankbanjam, mgz so I am not sure how to dupe that problem, but there are two places in the code which still try to import testing/logging13:17
frankbanone is golxc, and I have a fix here: https://codereview.appspot.com/9266004613:18
jamfrankban: rm -rf $GOPATH/pkg13:18
jamthen when you build again, it should fail13:18
frankbanthe other is juju-core testing/testbase/log.go, which is easy to fix13:18
mgzfrankban: I'm looking at the second13:18
mgzI guess we land the golxc one, then I can bump that dep as well13:19
mgzwill review13:19
mgzcurrently I'm missing PatchEnvironment..13:19
frankbanmgz the second is something like http://pastebin.ubuntu.com/7536578/13:20
mgzfrankban: ta13:21
frankbanmgz: Once the golxc land, we should update golxc and github/juju/testing dependencies in juju-core, aplly the patch and hopefully we are all using the new testing version13:21
mgzfrankban: lgtm13:22
frankbanmgz: landing it13:22
mgzyeah, I'm doing that, go ahead and land and give me the sha113:22
mgzoh, it's actually a lp branch13:24
frankbanmgz: merged revno 913:25
frankbanmgz: proposing a fix for juju-core13:28
mgzfrankban: I've got it13:30
mgz...when lbox responds, that is13:30
frankbanmgz: ok13:30
mgz(I'll also need to fiddle with the landing bot anyway)13:30
frankbanmgz: yeah, we need to update both golxc and github/juju/testing, correct?13:31
mgzfrankban: yup. cr up... nearly, man I won't miss lbox13:36
mgzdownloading all of juju-core each time just to make a diff for cr is insane13:37
frankbanmgz: on the other hand, Rietveld is freaking good13:38
mgzfrankban: 9260004613:38
frankbanmgz: looking13:39
frankbanmgz: LGTM13:41
mgzfrankban: bot deps done, marking approved13:43
frankbancool13:43
mgzbot has picked it up13:44
natefinchOMG, why does LibreOffice turn on line numbers by default on documents?13:52
jamnatefinch: Tools - Line Numbering set your own options?13:55
natefinchjam: yeah, just seems like an insane default13:56
natefinchjam: at first I assumed the document was corrupt or something...13:57
jamnatefinch: I just created a new Writer and it doesn't have line numbers on13:57
jamare you sure you didn't change your setting some time in the past?13:58
natefinchjam: possible I suppose.... though I honestly can't imagine ever turning on line numbers for a document like that.  Anything's possible though13:58
perrito666natefinch: I cant remember opening *office since google docs exist13:59
natefinchyeah, me either.   but, the TOSCA stuff is in a docx you need to download :/14:00
natefinchwhich.... pretty much tells you all you need to know about TOSCA14:00
perrito666such as "we still use ms word"14:00
natefinchyep14:01
jamnatefinch: its docx, though, isn't that the "open" XML standard, right? ..... right?14:03
natefinchit's a lot better than .doc yeah :)14:04
perrito666yup, the one that has an open spec filled with references to closed specs :p14:04
natefinchhaha14:04
perrito666it was a fun read14:05
mgzwtf test failures14:05
frankban:-/14:06
mgzthese are new to me14:06
mgzwhy is it trying apt-get at all...14:06
frankbanmgz: I guess there is something wrong with the new LoggingCleanupSuite14:08
mgzjam: any ideas on the failures for merge lp:~gz/juju-core/logging_dep_fixes ?14:08
mgzfrankban: I guess, it seems isolationy14:08
mgzfrankban: can you try to reproduce locally?14:09
frankbanmgz: duped, lots of failures14:09
mgzk, poke me if you need help14:09
jammgz: apt exit status 100 seems like "something got really screwed up"14:09
jamnow I don't know why we are actually running apt-get anything on the bot, but you could just try again14:10
jamhttp://askubuntu.com/questions/347830/how-can-i-get-a-verbose-apt-get-exit-code14:10
jammgz: "could not open lock file"14:10
jamwe shouldn't be root anyway14:10
mgzjam: something bork-ish with isolation on the suite somehow I think, the log above shows it complaining about not being root14:10
=== vladk is now known as vladk|offline
mgz(rightly, we don't run the tests as root as we're not insane)14:11
mgzhow we end up on a "must run apt-get" path is mysterious14:11
jammgz: are you reverting the version of juju/testing ?14:11
* jam wonders if we were getting "correct" isolation with the right version of juju/testing14:11
mgzjam: probably should now, I tried going forward (as otherwise go get is broken)14:11
mgzgoing backwards will at least unblock landings14:12
=== vladk|offline is now known as vladk
frankbanmgz: maybe I've found something14:21
mattywnatefinch, if you have more HA work I'm available14:24
frankbanmgz: could you please try it again after applying this patch? http://pastebin.ubuntu.com/7536884/14:24
natefinchmattyw: cool, in a meeting, talk to you in a bit14:25
=== alexisb_bbl is now known as alexisb
frankbanmgz: all this Logging* stuff can be confusing14:25
=== vladk is now known as vladk|offline
mattywnatefinch, no problem, whenever is good14:26
mgzfrankban: ha, I nearly did that, my bad, should have double checked when you posted the first one14:26
=== vladk|offline is now known as vladk
frankbanmgz: tests seems to work locally with that patch14:26
mgzfrankban: trying on the bot again14:28
frankbanfinger crossed14:28
frankbanmgz: merged \o/14:44
wwitzel3cargo culting something and then working backwards on actually understanding it is a totally valid approach right?14:45
mgzfrankban: ace14:47
mgzwwitzel3: provided part #2 happens :)14:47
frankbanmgz: thanks a lot for your help14:49
wwitzel3mgz: right :)14:49
mgzeveryone: stuff should now be landable, when pulling trunk you'll want new golxc and testing packages14:49
wwitzel3nice14:50
natefinchwwitzel3, perrito666: finishing up last meeting, be there in a couple minutes15:01
perrito666natefinch: ack15:01
wwitzel3natefinch: sounds good, no one else is here yet anyway :P15:01
perrito666wwitzel3: michael and I are15:01
perrito666you might want to check where you are15:01
wwitzel3moonstone?15:01
perrito666wwitzel3: yup15:02
wwitzel3perrito666: had to restart it, standard issue hangout15:02
voidspacenatefinch: you still in a meeting?15:06
natefinchvoidspace: coming15:06
dimiternanyone willing to review a trivial fix for bug 1323263 ? https://codereview.appspot.com/101820044/15:16
_mup_Bug #1323263: remove --exclude-network from deploy <deploy> <juju-core:In Progress by dimitern> <https://launchpad.net/bugs/1323263>15:16
dimiternnatefinch, perrito666, wwitzel3, voidspace, ^^ ?15:20
voidspacedimitern: looking15:22
dimiternvoidspace, cheers!15:23
perrito666voidspace: natefinch ping me on irc if you need a hand loving mongo, bbiab going to lunch15:23
voidspacedimitern: yep, looks good to me15:25
dimiternvoidspace, thanks15:26
voidspacehmmm... the mgoDialTimeout is 60 seconds so I don't think it's that we're not waiting long enough15:46
=== vladk is now known as vladk|offline
=== psivaa-sprint is now known as psivaa
perrito666fwereade: the warning message is very fun15:58
fwereadeperrito666, :D15:58
perrito666voidspace: any luck?16:00
voidspaceperrito666: specifying an explicit logpath seems to cause a tls connection failure!16:01
voidspaceERROR: cannot read certificate file: /tmp/test-mgo234085341/server.pem error:02001002:system library:fopen:No such file or directory16:01
voidspacewhich is new :-)16:01
perrito666voidspace: yay16:01
voidspaceperrito666: I can tell the problem because it *does* create the logfile16:02
perrito666race? permissions?16:03
voidspaceperrito666: it creates the log file fine so it can't be permissions I don't think16:03
voidspaceI'm going to remove the logfile options to see if those are *really* the cause16:04
voidspaceI suspect not16:04
jcw4fwereade: thx16:05
voidspacemaybe they really are. seems to be back to failing for the old reasons.16:05
natefinchback16:06
voidspacenatefinch: hey, hi16:06
voidspacenatefinch: so adding a "--logpath" parameter to mongod causes it to fail to start with "ERROR: cannot read certificate file"16:07
voidspaceI guess it logs to syslog by default16:10
voidspacehmmm... maybe not16:10
perrito666voidspace: grep on /var/log :p it must be there somewhere16:12
voidspaceperrito666: we're starting it without logging options - I think it logs to stdout by default16:13
voidspaceperrito666: so not necessarily16:13
perrito666really?16:13
voidspacewell, not sure :-)16:15
natefinchsorry, that back was premature.  Back now.16:15
voidspaceperrito666: but there are options to set logging to syslog and options to set it to a file16:15
voidspaceperrito666: there is no option to set it to standard out - but it's mentioned several times16:16
voidspaceperrito666: the implication being that it's the default if you don't specify a logpath or syslog16:16
voidspacenatefinch: I'm grabbing coffee16:18
=== Ursinha is now known as Ursinha-afk
voidspacelogging to syslog causes the tests to hang16:38
voidspacethis time logging to a file caused the error:16:38
voidspace ERROR: dbpath (/tmp/test-mgo975498476) does not exist.16:38
voidspaceah, however maybe we *use* the standard output to tell when mongo has started16:39
voidspaceso diverting logging causes the tests to not know when mongo has started16:39
voidspaceyeah, we're capturing output16:40
sinzuivoidspace, I am watching this test. I failed, but I see a new set of debs being published that will run this test again http://juju-ci.vapour.ws:8080/job/local-deploy-precise-amd64/16:58
sinzuivoidspace, mongodb replication set issue on precise localhost http://juju-ci.vapour.ws:8080/job/local-deploy-precise-amd64/1349/console16:58
voidspacesinzui: oh dear16:59
sinzuivoidspace, the test used mongodb-server 1:2.4.6-0ubuntu5~ctools117:00
voidspacedammit17:00
voidspaceI have to leave now17:00
sinzuidamn, voidspace The newest revision fails the same way http://juju-ci.vapour.ws:8080/job/local-deploy-precise-amd64/1350/console17:00
voidspaceI'm going out with wife and friends so can't postpone17:01
sinzuivoidspace, I will talk to the other devs17:01
voidspacebut that looks like a problem17:01
natefinchvoidspace: go go, we'll figure it out17:01
natefinch(or not)17:01
voidspacemaybe we need to back out the local provider change :-/17:01
voidspaceneeds testing with precise17:01
voidspacenatefinch: thanks, :-(17:02
voidspaceI have to go, so EOD17:03
voidspacenatefinch: if there's anything I need to do for the morning email me17:03
natefinchvoidspace: will do17:03
voidspacenatefinch: I could setup a precise VM to try it (in fact I probably have one)17:03
sinzuinatefinch, note that this issue happened first in 2804, which passed on trusty ppc64. It will retested with 2806 soon17:05
alexisbawesome, thanks cmars for the doc17:50
=== vladk|offline is now known as vladk
perrito666mm launchpad just emailed me saying it could not email me a code review comment19:10
perrito666anyone got one of those before?19:10
perrito666btw, https://codereview.appspot.com/100810045 I will especially appreciate comments on how to improve tests19:12
perrito666bbiab19:12
bodie_fwereade, https://codereview.appspot.com/94540044/19:56
perrito666fwereade: you overbritished me :p what is pointification20:49
fwereadeperrito666, speaking as if one were the pope :)20:49
perrito666fwereade: well, the pope speaks spanish :p20:50
fwereadeperrito666, ("to speak in a pompous or dogmatic manner", anyway)20:50
perrito666altough I would definitely drop my jaw if I got such network savvy comment20:50
fwereadehaha20:50
fwereadeperrito666, that's not how VLANs work, my child20:51
perrito66622/TCP in "thow shall not pass"20:51
=== Ursinha-afk is now known as Ursinha
perrito666fwereade: anyway I like your approach better21:00
fwereadeperrito666, I'm not quite sure I really like either of my suggestions -- I have a nasty feeling that the "best" one is an untractably tedious hassle to actually implement21:01
perrito666fwereade: 2 is better than current21:01
fwereadeperrito666, the two-part one might be viable, but get someone else's input, it's late and I'm a bit tired21:01
perrito666fwereade: well lat night shift is about to kick in21:01
perrito666and apparently I have a meeting tonight at 11PM21:02
fwereadeperrito666, yeah, I won;t be at that one I'm afraid21:02
fwereadeperrito666, all I'm really good for is reading devops borat, I should probably just go to bed21:03
perrito666well, my current time zone makes me feel guilty to miss any f the 3 meeting shifts :p21:03
perrito666oh man, now you just made me hook with devop borat21:06
fwereadeWhen you are run DROP DATABASE you are have of many problem but Big Data is not of one of them.21:07
bodie_lol21:11
bodie_that was eminently quotable21:11
fwereademenn0, waigani, thumper: was there anything I needed to talk to any of you about?21:26
thumperfwereade: not entirely sure21:26
waiganifwereade: just getting through emails now. Did we reach agreement on a flag?21:26
menn0fwereade: I'm waiting a tiny bit of review feedback ...21:27
* menn0 looks up review21:27
fwereadewaigani, I like thumper's idea: make it a cmd-specific format21:27
waiganiso just $ juju switch --format21:27
fwereadewaigani, sill not sure if it should be called "smart" or something else, but the default output format can be the original behaviour and we can get json/yaml as usual21:28
waiganifwereade: ^21:28
fwereadewaigani, yeah21:28
waiganiokay, done21:28
fwereadewaigani, cool21:28
menn0fwereade: never mind me. I just saw that you have responded (still getting through email)21:28
fwereademenn0, cool, I thought I had :)21:28
waiganimenn0 I know the feeling - tooo many emails!21:29
* perrito666 notices fwereade setting the terrain to flee21:29
menn0fwereade: I also have a tiny question about how one aspect of upgrades work but I don't know if you're the person for that21:29
menn0waigani: the email volume here is tiny compared to my last job (500-1000 per day). working here has been a relief in that regard.21:30
waiganiyikes!21:30
perrito666menn0: wow, that is so much mail to ignore21:30
waiganidid you work at a spam company?21:30
waiganimenn0: I think wallyworld knows a bit about upgrades21:31
perrito666waigani: he worked at a company that processed dbus calls, by hand21:31
fwereademenn0, I was just looking at them and I'm worried about the order in which we run the upgrade steps, so I might be able to answer21:31
menn0no, just a company with a lot of automated systems that squawked via email when unhappy and a company culture where you got included in every email discussion21:31
menn0fwereade: hangout?21:31
fwereademenn0, sure, would you start one please? just grabbing a drink :)21:32
menn0fwereade: sure. I think this will be quick if that helps :)21:32
perrito666fwereade: I see you are setting the example21:32
fwereadeperrito666, ehh, not sure how laudable it is really ;p21:33
perrito666fwereade: I said example, the word good was never involved21:33
menn0fwereade: https://plus.google.com/hangouts/_/gutacrivw5fqrtq2mojvs5qjxma?authuser=1&hl=en-GB21:33
perrito666fwereade: can I steal tomorrow a moment from you so we think trough the options for apiworker host? I like option 2 but I am not sure how much work is involved vs how much does it add against 121:40
=== Ursinha is now known as Ursinha-afk
fwereadeperrito666, the big question is how easy it is to extract information about what machines the addresses are associated with from the doc in state, and I've completely forgotten its content21:41
fwereadeperrito666, if it's easy to get that info back, it's easy for the API server to tell that machine X wants to know state server addresses, hey machine X is a state server, let's tell it local host21:41
fwereadeperrito666, if it's hard, it might not be worth doing... but, hmm, even if it's not in that doc it should be pretty trivial to craft a query to reassemble that data with machine ids as part of it21:42
perrito666fwereade: I am a bit sleepy, cold medicine has been doing that to me a lot, tomorrow I will definitely re-ping you regarding this21:47
fwereadeperrito666, ok, be prepared for a bit of spitting with rage -- not at you, but at the common.APIAddresser code, which is not set up for bulk calls21:50
fwereadeperrito666, because "who would ever need them"21:50
fwereadeperrito666, and yet it fucks us because we don't know who's asking without fiddling inappropriately with the auth object21:51
perrito666fwereade: I noticed, I tried to reproduce it for the thing that keeps track of state instances and it really is... interesting21:51
fwereadeperrito666, it's not "what are the api servers" -- it is "what are the api servers we want to expose for entity X"21:51
perrito666yep21:52
fwereadeperrito666, every time we make that assumption it leads to a fuckup21:52
perrito666fwereade: I must admit it was a pretty large thing to swallow and I still am not entirely sure to understand how it fully works21:53
fwereadeperrito666, and it's always for the same fucking stupid reason, that we can't possibly imagine when we'd want to discriminate according to the recipient of the information21:53
fwereadeperrito666, sorry, I'm ranting at you and you don't deserve it21:53
fwereadeperrito666, it's a definite candidate for immediate unfucking once we have api versions, though21:54
fwereadeperrito666, ok, I will be off, and let you go21:54
* fwereade does a bit of crazy-person handwaving and eyerolling on his way out21:55
menn0given that today is github conversion day do we need to hold off merging anything until it's done?21:55
fwereademenn0, if you can slip it in before wallyworld wakes up I think you're ok -- but I'm not sure if he actually sleeps21:56
wallyworldwot21:56
perrito666fwereade: lol, rant away, I dont mind21:56
perrito666I would mind less if I had a beer21:56
wallyworldfwereade: menn0: i am delaying the cut over21:56
wallyworldemail not sent yet21:56
wallyworldbut soon will be21:56
fwereadeoh, yeah, curtis isn't ready?21:56
fwereadeanyway, really off now21:57
perrito666fwereade: bye21:57
menn0fwereade: bye, thanks for the help21:57
wallyworldfwereade: a few reasons, but given CI is currently unhappy, we really need to get that sorted out first21:59
wallyworldthumper: can we reschedule our 1:1 to after the core meeting today?22:10
waiganithumper: my calender tells me we have a core meeting from 2pm to 3pm today. Is that correct?22:16
perrito666waigani: if that is in like 4 hs yes22:17
waiganiperrito666: sounds about right22:17
waiganiyay, I'm actually going to be away for a meeting22:17
waiganiAND have my voice!22:17
waiganinow if only I had something to say...22:18
waiganis/away/awake22:18
perrito666waigani: we are now doing shifting meetings22:18
perrito666so everyone has the chance to go to at least 2 iirc22:18
waiganiyeah I saw that, hard to keep track of22:18
waiganibut i'm sure I'll get use to it22:19
thumperwaigani: yes...22:19
perrito666waigani: not really22:19
thumperwaigani: this is the attempt to have a rolling meeting schedule22:19
thumperwaigani: so it isn't terrible for some people all the time22:19
perrito666this one its outside of my tz but if I am awake I will most likely be there22:19
thumperwaigani: but instead terrible for everyone some of the time22:19
thumperwaigani: also we don't have to go to them all now...22:19
waiganihehe, true22:19
thumperlike the ones at 4am or whatever22:19
waiganithat is good22:20
=== vladk is now known as vladk|offline
waiganiokay, time to code22:20
thumperwallyworld: yeah, sure22:23
wallyworldok22:23
thumpermenn0, waigani: rick_h_ had me thinking in the meeting we just had where he said we were making a terrible user experience, and I think he is right22:30
thumperthis is with respect to sharing environments22:30
thumperhow about 'juju login username@api-endpoint'22:30
thumperprompts for password22:30
thumperhmm... needs a name22:31
thumperjuju login env-name username@api-endpoint22:31
thumpermakes env-name.jenv file22:31
thumpererrors out if env-name already in the environments store22:31
thumperjuju logout could remove the jenv file22:31
thumperwith obvious warnings like "this doesn't destroy the environment"22:32
waiganiso if there where two environs with the same name, they would be disambiguated by the endpoint? Oh, not with a multi tenant state22:33
waiganithumper: would this replace switch?22:34
thumperwaigani: no... it replaces the "here is a jenv file, put it in the right place"22:35
thumperwaigani: we may well implicitly switch when they login22:35
waiganiright I get you22:35
thumperwaigani: the env-name is just what I call it22:35
thumperwaigani: obviously when we have multi-env state servers, we will need a way to identify the environment within the state server22:36
waiganiyeah - and THAT should be the environ-name (or id)22:36
thumperprobably uuid22:36
waiganiactually, we already have that22:37
thumperwe do, but in a state server where there is only one environment, we can leave it out22:37
thumperbut we could write the code now to specify it22:37
thumperI think that is a good plan22:37
thumperso...22:38
waiganiSo we have the UUID field in environmentDoc, but we currently don't use it?22:38
thumperjuju login <local-name> <user@endpoint> [<env-uuid>]22:38
thumperwaigani: right22:38
thumperor we don't use it for much :)22:39
* thumper thinks...22:39
thumperconsider this:22:39
waiganiand the usecase is: environ exists, has been bootstrapped, has default .jenv file. Then you want to give a new user access to this environ?22:39
thumperjuju login prod-foo thumper@jaas.io paste-uuid-from-email22:40
thumperwaigani: yes22:40
thumperI think this is better than the 'generate jenv' option22:41
waiganiwhy do you need the prod-foo?22:41
thumperit is the name of the environment for me22:41
thumper~/.juju/environments/prod-foo.jenv is created22:41
thumperotherwise, what do we call it?22:42
waiganihmm, does the user really need to name that? I suppose for switching later?22:42
thumperright...22:42
thumperalthough, interestingly...22:42
thumperwe could default to try to use the name that is identified by the environment itself22:42
waiganiI'm just wondering if we can automate it in the background22:42
thumperas the environment has a 'name'22:43
waiganiright, appended with the user's name/id?22:43
thumperick22:43
waiganithen the .jenv just becomes a background implementation detail22:43
thumperit needs to be something that the user can switch to easily22:44
waiganiI'm missing where authentication is happening?22:44
thumperI don't want all my environments named with my name at the end22:44
thumperwe authenticate as part of the login, what the login does is create the .jenv file for us22:44
waiganiso the user will get prompted for a password?22:45
thumperyes22:45
waiganiwhy not also propt them for a .jenv name?22:45
waiganiwith a default22:45
thumperwe could... if they don't specify a name on the command line22:45
waigani$ juju login thumper@jaas.io paste-uuid-from-email22:45
waiganipassword:22:45
waiganienv-name [default]:22:46
thumpersure22:46
waiganiwe have to stop calling it environ-name22:47
thumperwell... maybe22:48
waiganiare we storing the user's uuid in the .jenv?22:49
waiganiif .jenv is deleted on logout, do we need it in the first place? Is it just playing the role of keeping user session?22:51
perrito666ok I am going to get dinner, I might be back for the team meeting if I dont fall sleep before cheers22:54
waiganithe other way to approach this with a different workflow: 1. authenticate to a state server 2. be presented with environs you are allowed to access 3. once an environ is chosen, be presented with users that you can login as22:54
waiganithumper: ^22:54
thumperwaigani: that doesn't really make sense22:55
thumperwaigani: as step 1 and step 3 don't really work together22:55
thumperwaigani: I do see where you are getting at, but it doesn't scale22:55
thumperwaigani: consider jaas.io where I have access to 1500 environments22:55
waiganiright22:56
waiganiso which part does not scale?22:57
thumperbe presented with environs I can access to choose the one22:58
waiganiwell, that can be handled in the ux - e.g. apt-get22:59
thumperexcept which of the 1500 uuids do I choose?23:00
thumperI understand where you are coming from, I just disagree in the approach23:00
waiganiI have some gaps in my understanding of the user workflow and what role .jenv is playing23:00
waiganistandup time!23:01
sinzuiI think mongo killed stilson-06. I killed the proc, but juju cannot bootstrap anymore. And the disk is full, but I cannot find what is taking up 4G+ of space23:44
sinzuireboot at least restored 2G23:52
sinzuino, 7G23:52
* sinzui tries stable juju again23:53
sinzuiyeah23:54

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