/srv/irclogs.ubuntu.com/2014/11/14/#juju-dev.txt

jw4davecheney: okay00:07
jw4davecheney: I'll leave it as is for now, but we may want to revisit names package I guess00:07
davecheneyi want to shoot that in the head00:07
davecheneyhaving api types in a seperate repo is just a mistake00:08
davecheneytags are api types00:08
davecheneythey belong in the api00:08
davecheneymy rule of thumb is, if you have to import two pacakges to use the functionality from one package, then they should be combined00:08
jw4davecheney: can't we just pull them back in to api now that we've cleaned up the api packages?00:08
jw4davecheney: that names package is tiny and maintining it is a pita00:09
davecheneyjw4: raise an issue00:11
davecheneyid' +1 that PR if you did it00:11
jw4kk00:11
davecheneyin the past it wasn't clear that the names, or specificlly tags00:11
davecheneywere an api type00:11
davecheneydespite what fwereade keeps telling us00:12
jw4:D00:12
davecheneybut, now we're had the clue bat applied00:12
davecheneyit is clear that tags are api params00:12
davecheneyso if you were to attempt that, it would be great00:12
davecheneyid' do it like this00:12
davecheney1. delete juju/names from your GOPATH00:12
davecheneycopy all the Tags types to apiserver/params00:12
davecheneykeep hitting things with sed til it works00:13
jw4davecheney: +100:13
jw4davecheney: of course if we do that it seems even more important to not include the Tag types in the state package...00:21
jw4issue raised: lp-139253700:22
davecheneyurgh00:25
davecheneyfuck00:25
davecheneyforgot that00:25
* davecheney throws a shoe00:26
jw4hehe00:26
perrito666<austin powers> who throws a shoe?00:26
perrito666http://www.youtube.com/watch?v=an0bVaTjF_Y00:27
thumperum... what's this about state not using names?00:28
jw4oh, oh.  now we're gonna catch it00:28
thumpertags aren't entirely api types00:29
thumperwhen an entity has a tag, and the entities come from state00:29
thumperthen you need to pull them up out into a common library00:30
thumperwhich is what juju/names is00:30
thumperwhat's the problem?00:30
thumperideally...00:30
jw4so then the dependency graph of state has to include juju/names as an acceptable dependency (obviously)00:30
thumpertags would live closer to the business types00:30
thumperno, I think it is a necessary dependency00:31
jw4thumper: as in 'shadow' or 'mirror' business types in the API layer?00:31
thumperjw4: later...00:31
jw4thumper: kk00:32
thumperdavecheney: please don't bother removing juju/names dep from state at this stage00:33
thumperdavecheney: there are other fish to gut00:34
jw4perrito666: just watched that clip - funny :)00:36
davecheneyhttps://groups.google.com/forum/#!topic/golang-dev/sckirqOWepg00:47
davecheneythumper: understood00:48
thumperP.S. For those keeping score, this will be Go version control system number four. Go development started in Subversion, moved to Perforce, then Mercurial, and soon to Git.01:15
thumperat least we only used two01:15
rick_h_thumper: :)01:20
rick_h_thumper: aren't you glad you practiced your git and got ahead of the game now?01:20
thumpershuddup01:21
* thumper is moving private project from bzr to git01:21
thumperfor reasons01:21
davecheneyMoving DVCS hosting as a Service!01:25
mwhudsondavecheney: launchpad used to do that!01:52
mwhudsonwell still does i guess01:53
thumper:-)02:01
thumperdavecheney: so... I have a question02:01
thumperand I think the answer is "don't do that"02:01
thumperbut...02:02
thumperif I have an error02:02
thumperbut it is a typed nil02:02
thumperhow do I check that the pointer is nil?02:02
thumperbecause I can't check nil02:02
thumperI'm trying to make the library robust to stupid people02:03
* thumper is guessing reflect package02:03
thumperreflect.ValueOf(err).IsNil() works02:06
perrito666thumper: can you not test for stupid users?02:06
davecheneythumper: hmm02:07
davecheneygimme a sec02:07
davecheneyreflect is one way02:07
davecheneycan you show me the code path ?02:07
thumperI'm writing the code path :-)02:07
thumperlemmie pastebin it02:08
davecheneyk02:08
thumperhttp://paste.ubuntu.com/8996904/02:08
thumperso... I'm trying to make this robust for a nil error02:08
thumpereven a typed nil02:08
thumperwithout the nil check, a typed nil supports the interface02:09
thumperso we need the nil check as well02:09
thumperperrito666: not easily02:09
perrito666few things make me happier than trimming loads of lines of code... perhaps some medicine for my cold would02:14
davecheneythumper:02:15
* thumper waits02:16
davecheneyerr, ok := err.(ErrorStacker); if ok && err != ErrorStacker{}02:16
davecheney^ guess02:16
thumperdavecheney: but ErrorStacker is an interface02:16
davecheneythen youre secrewed02:16
thumperreflect FTW02:16
davecheneysorry02:16
davecheneyhttps://github.com/juju/juju/pull/113402:35
davecheneysmall, hoefully uncontraversial change02:35
thumperfirst of three error and logging methods:03:17
thumperhttps://github.com/juju/errors/pull/1303:17
thumperhttps://github.com/juju/loggo/pull/603:29
thumperhttps://github.com/juju/testing/pull/3803:30
thumperonce these are merged, we can add dependencies to juju and take advantage of them03:31
thumperanother friday, another kid off to brownie camp03:31
* thumper away for now03:31
thumpercheers folks03:31
=== kadams54 is now known as kadams54-away
davecheneydoes anyone know how to do a stacked review on rbt ?03:40
davecheneycan it do that ?03:40
davecheneyping, http://reviews.vapour.ws/r/436/03:44
axwdavecheney: you can do pass "--parent" to rbt post03:55
davecheneyaxw how does that work with the bot that auto generates PRs ?03:55
axwnot 100%, but I *think* you can do it after it's already been proposed03:55
davecheneyi'll give it a go03:56
axwdavecheney: also, LGTM on your rename branch03:56
davecheneyi'll just merge then03:56
davecheneyta03:56
davecheneyaxw the next branch is far more intersting that a search + replace03:57
davecheneyaxw: fyi https://github.com/juju/juju/pull/113704:00
axwa little more than I have time to review right now, but the description sounds nice04:05
davecheneykk04:05
davecheneythat's about it from me for today04:05
davecheneyone or two more cleanup branches then things are looking a lot better04:05
ericsnowdavecheney: were you going to sort out the dependency issues causes by state/backups.go?04:08
ericsnowdavecheney: I figured the most straight-forward thing would be to basically move it into state/backups.04:09
davecheneyericsnow: yes, the issue is assigned to me04:11
jw4name package refactor for beginning migration of Actions to using UUID identifiers : https://github.com/juju/names/pull/3104:11
ericsnowdavecheney: okay04:11
wallyworlddavecheney: multiwatcher refactor lgtm04:11
davecheneywallyworld: ta04:12
davecheneyjust waiting for the other branch to land04:12
wallyworldrefactoring is good :-)04:13
wallyworldfixing dependencies is good :-)04:13
davecheneywallyworld: it's made thigns a lot cleaner04:13
jw4I'm unclear on api breaking changes with regards to Actions since they're not in use anywhere yet04:13
davecheneyapi/ no longer depends on state04:13
wallyworld\o/04:13
wallyworldand not should it04:13
wallyworldnor04:13
davecheneyindeed04:14
wallyworldjw4: my view is go ahead with your changes, so long as they are truly not used anywhere04:14
jw4wallyworld: yep not yet, but that window closure is rapidly approaching04:14
wallyworldtime to get it right then04:15
wallyworldbefore you ship a working solution04:15
jw4yeah, and this PR is groundwork for some realy good improvements :)04:15
wallyworld\o/04:16
davecheneyjw4: names review done04:22
jw4tx davecheney04:22
davecheneywallyworld: axw https://github.com/juju/juju/pull/113704:34
davecheneygood to review now04:34
wallyworldlooking04:34
davecheneyjust merged the prereq04:34
wallyworlddavecheney: i just review that one did't i?04:35
davecheneyyeah04:35
davecheneylgtm still stands ?04:35
jw4updated https://github.com/juju/names/pull/31 (davecheney ?)04:43
* davecheney looks04:44
davecheneyjw4: what about the panic in Join... ?04:45
jw4davecheney: what should it do?04:45
jw4davecheney: if someone calls it with invalid input?04:46
davecheneyi think we have to apply the same logic as we do with tags04:46
davecheneyNewXXTag will panic04:46
davecheneyso you're not uspposed to call it outisde of a test without validating the input first04:46
davecheneyie, validating that it wont panic04:46
jw4davecheney: I see, so assume good input?04:47
davecheneynot sure what you mean ?04:48
jw4well... since this is a public "constructor" it can be called with invalid input04:48
jw4not sure what to do in that case04:48
davecheneythe rule of thumb is04:49
davecheneydon't panic in non test code04:49
davecheneythat goes double when dealing with user input04:49
jw4davecheney: so should JoinActionTag have an error return type?  If I understood you correctly you're saying that non test code should never call the other NewXXTag variants that also panic and don't return error.04:52
jw4davecheney: I might have misunderstood you before too - maybe the only use of this Join.. method is in Test code...04:53
davecheneyif the method is only used in tests, then there is nothing to do04:53
davecheneysorry, i think i asked that04:53
davecheneybut i wasn't clear enough04:53
davecheneypanicing in tests is fine04:54
jw4davecheney: no you were clear, I just wasn't thinking right04:54
davecheneyericsnow: you're good to go on that PR04:54
ericsnowdavecheney: thanks04:54
ericsnowdavecheney: I'm hoping to land http://reviews.vapour.ws/r/402/ (the one where I get rid of the sub-packages) before any of my other patches04:55
jw4davecheney: so JoinActionTag is used entirely in test code except for closely coupled calls that I will fix in state04:55
davecheneyi'll have a look04:56
davecheneyjw4: ok04:56
davecheneyericsnow: oh, that was that two page review04:56
davecheneyi'll have a look now04:56
ericsnowdavecheney: k04:56
=== kadams54 is now known as kadams54-away
ericsnowdavecheney: thanks for the followup review05:43
ericsnowdavecheney: I'll look closely tomorrow05:43
davecheneynp05:50
jw4Smallish initial refactor of Actions to use UUID instead of Sequence for suffix of _id : http://reviews.vapour.ws/r/441/05:54
jw4preparation for consolidating Actions and ActionResults into one entity, and improving of the watcher and notification design of actions05:55
davecheneyjw4: reviewed06:02
jw4speedy gonzalez!06:02
jw4:)06:02
jw4davecheney: couple questions...06:07
davecheneyshoot06:07
jw41) names.ActionTag is in an intermediate stage right now, where it has prefix and suffix, but the suffix is just a string, not guaranteed to be an UUID06:08
jw4after step two or three I hope to rid actions of the prefix/suffix id altogether06:08
davecheneyjw4: ok, add a TODO06:08
jw4and the ActionTag will just be kind-UUID06:08
jw4kk06:08
davecheneyand don't use dud data in tests06:08
jw4:-S06:09
jw4wait... what's the emoticon for embarrassed?06:09
davecheneyi'm only know the ones for smashing things06:09
jw42) the Action.ActionTag() method returns an ActionTag but I don't know how to guarantee that the internal state will be correct06:10
jw4notwithstanding our earlier discussion, is it appropriate to panic in the case where an Action entity has invalid _id that will cause an invalid ActionTag?06:11
davecheneyyes, but you should also provide a validation function06:11
davecheneyso callers can know that they call that method, they'll get valid data06:12
davecheneyor return an error06:12
jw4Ah!06:12
jw4derp ... so Action.ActionTag() should return names.Tag, bool06:12
davecheneyyup06:12
jw4kk06:12
davecheneythe key is we never create an invalid tag06:12
davecheneyif we do that at the points where thigns are converted to tags06:12
davecheneythen we have less error checking06:13
jw4makes sense06:13
davecheneyand we _know_ that when someone talks about a tag, it is valid data06:13
davecheneythat is the difference between a tag and string06:13
jw4pedantically speaking; since the return is names.ActionTag, bool not *names.ActionTag, bool then we will be returning an invalid tag when the bool is false06:14
jw4(parenthesis would have helped that sentence)06:14
davecheneyyes, that is why names.NewXXXTag returns a tag or panics06:14
davecheneyso there is no chance, even if you ignore the error, that you can use bad data06:14
davecheneyso my preference is for somehing like06:15
davecheneyaction.ValidateTag() bool06:15
davecheneywhich does the check06:15
davecheneyand action.Tag() whcih returns a tag or panics06:15
davecheneythen, you can ditch validateTag once it is not needed06:15
jw4hmm; interesting.  I see. I'll go that route in this case06:15
davecheneyits pretty gross06:16
davecheneybut that is why tags are so strict06:16
davecheneyonce you have a tag06:16
davecheneyyou know whereever you use that data it is valid06:16
davecheneypretty gross, having to add that validate method06:16
jw4hmm; methinks I should keep that in mind for the next refactor of the names package too06:17
davecheneybasically the rule is06:17
davecheneyif you have a tag value, you _KNOW_ it is valid06:17
davecheneyso any method you call on that will also return valid dta06:18
davecheneythe cost of this is we need to be pedantic when parsing data to return a tag06:18
davecheneyso, one option could be to relax the checks that action.ActionTag does06:18
davecheneythereby making more things valid action tags06:18
jw4not a terrible choice, especially in transition06:19
davecheneya valid tag is pretty much defined by it's consumers06:21
davecheneyas long as there is nothing like06:21
davecheneyif tag.String() == "" { return error }06:21
davecheneythen it's fine06:21
jw4kk06:22
jw4updated http://reviews.vapour.ws/r/441/06:33
jw4thanks davecheney ; I'll need to update the names package again to make sure invalid UUID's cause the JoinActionTag to panic06:41
jw4also, interestingly utils.NewUUID() failed and returned an error in my tests a few minutes ago...06:41
jw4I'm going to head to bed, but I'll pick it up again in the morning.06:42
rogpeppedavecheney: ping08:22
davecheneyrogpeppe: ack08:22
rogpeppedavecheney: can you see what i'm doing wrong here? http://paste.ubuntu.com/9001604/08:23
rogpeppedavecheney: in relation to this issue: https://code.google.com/p/go/issues/detail?id=909808:23
rogpeppedavecheney: i *think* i'm guaranteed to be running from go tip there, no?08:23
* davecheney looks08:23
davecheneyrogpeppe: yes, thats go tip08:24
davecheneyis the polyNNNN repo updated ?08:24
davecheneythat repo has some asm which probalby needs to be updated08:24
rogpeppedavecheney: just making sure08:24
mattywmorning everyone08:25
mattywrogpeppe, davecheney morning08:25
rogpeppedavecheney: ah, i guess that was the problem!08:26
rogpeppedavecheney: i'm sure i go get -u'd it but evidently not08:26
davecheneyrogpeppe: i think the bug is in the poly repo08:28
davecheneyor in a duff working copy08:28
rogpeppedavecheney: yeah08:28
voidspacemorning all09:08
=== Spads_ is now known as Spads
voidspacedimitern: morning10:03
dimiternvoidspace, morning10:03
voidspacedimitern: http://reviews.vapour.ws/r/432/10:08
wallyworldaxw: re: the test10:24
wallyworldit won't work on windows will it?10:25
axwwallyworld: ah, crap.10:25
axwnope10:25
wallyworldi'd prefer not to rely on the pysical machine10:25
wallyworldmock out the func10:25
wallyworldsorry, i hould have been more insistent10:25
axwwallyworld: the best we could do then is to check that the worker is started10:25
wallyworldstarted and calls some func10:26
wallyworldi'll kill the landing job10:26
axwthanks10:26
axwwallyworld: "and calls some func" ?10:26
wallyworldmock out the func that the worker calls to check for block devices, can't remember the details off hand10:27
axwwallyworld: I'd prefer doing that inside the worker tests10:27
wallyworldreturn a made up set of block devices10:27
wallyworldok10:27
wallyworldmaybe checking the worker had started is enough10:27
axwI'll move the current test inside worker/diskmanager as a linux-only test10:27
wallyworldbut checking the worker has started doesn't check that it's wired up right10:28
axwfaking bits out doesn't really either10:28
axwe.g. pretending that it'd work on Windows, when in reality it won't10:29
axwwallyworld: alternatively, we could just skip the test on non-Linux...?10:30
axweventually it should work on Windows too10:30
wallyworldsure, but if we mock out listBlockDevices(), we can check that the worker calls that func10:30
wallyworldi guess yeah skip that test on windows10:31
wallyworldbut we should have a test for the no op worker on windows?10:31
wallyworldie test that the right worker is started on the given platform10:32
axwok10:32
perrito666morning10:38
axwwallyworld: I've pushed again, with more tests and refactored to work better on Windows11:32
wallyworldta, looking11:33
* fwereade extended lunch to do parent teacher thing at school11:40
wallyworldaxw: one comment - still about that machine agent test that relies on actually querying the machine hardware11:46
voidspacedimitern: I take it we *don't* have to account for the fact that a machine (maas node) may have multiple network interfaces with overlapping CIDRs (on different networks)11:52
voidspacedimitern: but we can assume that if a required address falls within a CIDR for a network then we should request the address allocation for that interface11:53
dimiternvoidspace, hold on, how can the CIDRs be overlapping?11:53
voidspacedimitern: i.e. the algorithm is "list networks for instance", "find the first one where the requested IP falls within the CIDR"11:53
voidspacedimitern:  you can have the same IP address on different networks, right?11:54
dimiternvoidspace, nope, I'd be surprised if you could11:54
voidspacedimitern: hmmm... ok, fair enough11:54
voidspacedimitern: I won't worry about it11:54
dimiternvoidspace, how will the routing work otherwise?11:54
voidspacedimitern: so you can have two different networks both using the same address space - but not routable between each other11:55
dimiternvoidspace, that's not possible in maas11:55
voidspacedimitern: cool11:55
dimiternvoidspace, and in ec2 it's not an issue, as everything falls inside the vpc super-range11:56
voidspacedimitern: yep, great11:56
voidspacebut for manual provider :-p11:56
voidspacewhich we're not worrying about now11:56
dimiternvoidspace, for the manual provider and others we'll have to think, but not now, yeah :)11:58
axwwallyworld: the whole thing is not a unit test, it's a functional test. but yes, I can mock lsblk.12:04
axwwill come back to it on monday12:04
axwthanks for the review12:04
wallyworldyeah, those jujud tests suck12:05
wallyworldnice not to propogate the badness just a little12:05
=== kadams54 is now known as kadams54-away
=== kadams54-away is now known as kadams54
=== kadams54 is now known as kadams54-away
=== kadams54-away is now known as kadams54
voidspacedimitern: if you're happy with http://reviews.vapour.ws/r/432/ could you add a shipit?14:22
voidspacedimitern: oh14:25
voidspacedimitern: you did :-)14:25
voidspacedimitern: thanks14:25
voidspacehadn't refreshed page14:25
perrito666natefinch: ?14:37
dimiternvoidspace, :)14:48
fwereadeperrito666, ping14:52
fwereadeperrito666, actually just when you're around: http://reviews.vapour.ws/r/298/ is in the queue, but I think I'll need a guiding hand to be useful with it: do you need another reviewer, or can I leave it to people who alreayd have relevant state in mind?14:53
perrito666hey hey14:55
perrito666fwereade: the people involved already have a state of mind and have been involved somehow in the changes made since initial proposal I think we can manage for now :)14:56
fwereadeperrito666, thanks14:58
fwereadeericsnow, similar questions re http://reviews.vapour.ws/r/346/ -- ISTM that dave/tim/jesse have already been looking into it in some detail, do you want my 2c as well or shall I leave it in their hands?14:59
ericsnowfwereade: I think we're good, but thanks (feel free to look things over though)15:04
fwereadeericsnow, it all looks fine as code, but the trouble is I'm a bit behind on necessary context for sane judgment15:04
ericsnowfwereade: no worries15:05
perrito666sinzui: I have to admit that my jaw dropped when I saw your mail not have an issue about restore :p15:22
sinzuiperrito666, I hope you didn't jinx the tests15:23
* sinzui looks15:23
jw4fwereade: thanks for the review - I think you're right about slashes versus hyphens... I know there was a reason, but I don't think it was insurmountable15:31
jw4fwereade: I don't think you've lost much context except maybe that switching from Sequence ID to UUID is a good initial step to consolidating Actions and ActionResults15:32
jw4fwereade: in fact I think both slashes and hyphens are supported15:32
fwereadejw4, so, the thing about uuids is that they're meant to be uu -- and so the leading service/unit bit would now seem to be redundant?15:33
=== tvansteenburgh1 is now known as tvansteenburgh
jw4fwereade: exactly15:33
fwereadejw4, hmm, I would be happier if we didn't have alternative spellings of the "same" tag15:34
jw4fwereade: I was telling davecheney last night that this is an intermediate step15:34
jw4fwereade: +115:34
jw4fwereade: I'll fix that too15:34
fwereadejw4, well, if it's intermediate towards "action-<uuid>" then the alternate spelling quibble is redundant too :)15:34
jw4fwereade: within a couple hops the ActionTags should be as clean as some of the other tags without the Prefix/Suffix mumbo jumbo15:34
fwereadejw4, <315:35
jw4fwereade: yep end-state action-<uuid>15:35
fwereadejw4, fwiw, I think that NotNil in the review is redundant15:35
fwereadejw4, a nil error will fail the subsequent ErrorMatches15:36
jw4fwereade: derp15:36
jw4fwereade: *thats* why my test was failing, and why davecheney told me to drop it15:36
jw4:)15:36
fwereadejw4, and btw I'm not quite following the NewUUID thing?15:36
jw4fwereade: confused rambling15:36
fwereadejw4, if it's broken we should fix it15:36
jw4fwereade: it all hinges on the fact that my assert should have been gc.Nil15:37
jw4i.e. I was *trying* to assert no error15:37
jw4not that there *was* an error15:37
jw4:)15:37
jw4fwereade: in short there is no problem with NewUUID except in my formerly confused mind15:38
fwereadejw4, ok, I think that's an LGTM with trivials then15:40
jw4kk15:40
wwitzel3ericsnow, natefinch, perrito66616:04
perrito666mm, I seem to have some connection prob, be right there16:05
rogpeppethe proposal for the hook that runs if no other hook does is "default-hook", right?16:37
rogpeppefwereade: ^16:37
rogpeppedimitern: ^16:38
dimiternrogpeppe, I don't really know, sorry16:39
rogpeppedimitern: ok, thanks16:39
rogpeppedimitern: i'll go with default-hook for the time being...16:40
dimiternrogpeppe, +116:40
sinzuinatefinch, mgz do you have a minute to review https://github.com/juju/juju/pull/114517:49
mgzsinzui: lgtm17:51
wwitzel3is there a way to set the debug level before you bootstrap?17:52
wwitzel3natefinch: found the issue with bug #139239018:29
mupBug #1392390: maas zone selected for deployment that is occupied <cloud-installer> <landscape> <maas-provider> <placement> <regression> <juju-core:Triaged by wwitzel3> <juju-core 1.21:Triaged by wwitzel3> <https://launchpad.net/bugs/1392390>18:29
wwitzel3natefinch: there are zero tests for that code is part of the problem, the for loop that looks at zones, if there was no error for a zone, it would keep process until the last zone instead of breaking out of the loop.18:30
wwitzel3natefinch: resulting in the twilight zone (which is full) being the last attempt, and hence returning the error.18:31
voidspaceg'night folks18:31
wwitzel3nn voidspace have a good weekend18:31
voidspacewwitzel3: you too, thanks18:31
natefinchwwitzel3: interesting18:32
wwitzel3natefinch: I added a break after the err check, and it works just fine now.18:32
natefinch.....and a test? :)18:33
wwitzel3natefinch: I am probably going to break out the zone selection logic in to its own method, so it can actually be tested.18:33
natefinchhuzzah!18:33
wwitzel3natefinch: because right now, testing it would be a nightmare (probably why it doesn't have them)18:33
natefinchMy thumbs aren't big enough for the thumbs up I want to give that :)18:34
perrito666natefinch: get one of those gloves you guys use for sport games18:34
natefinchlol18:34
wwitzel3haha18:35
wwitzel3sinzui: bug #1392390 needs fixing in master as well, so once it is fixed there, what is the process of getting it in to 1.21 branch?18:35
mupBug #1392390: maas zone selected for deployment that is occupied <cloud-installer> <landscape> <maas-provider> <placement> <regression> <juju-core:Triaged by wwitzel3> <juju-core 1.21:Triaged by wwitzel3> <https://launchpad.net/bugs/1392390>18:35
sinzuiwwitzel3, branch 1.21, use git patch to apply changes from you master addition. request a pull...edit the destination from master to 1.2118:37
wwitzel3sinzui: got it, thanks18:38
=== kadams54 is now known as kadams54-away
natefinchericsnow: did you need me to look at something?19:09
ericsnownatefinch: in a few minutes19:09
natefinchericsnow: kk19:09
=== kadams54-away is now known as kadams54
ericsnownatefinch: feel free to look over all the reviews or the whole patch, but I'd especially appreciate some feedback on the remaining (4) open issues on http://reviews.vapour.ws/r/402/.19:18
ericsnownatefinch: same with http://reviews.vapour.ws/r/346/ (which has no open issues)19:22
natefinchericsnow: looking19:26
ericsnownatefinch: ta19:26
perrito666rick_h_: I think I found the solution to my problem with having inexpensive cards with ipmi http://blog.michaelboman.org/2013/01/poor-mans-ipmi.html19:27
wwitzel3ericsnow: is RB not auto pulling in PRs anymore?19:49
ericsnowwwitzel3: should be19:50
ericsnowwwitzel3: but now that you mention it19:50
ericsnowwwitzel3: github's API throttles your requests if you aren't properly authenticated19:50
ericsnowwwitzel3: I'm guessing that's the issue19:50
ericsnowwwitzel3: yep ("API rate limit exceeded"); I'm planning on fixing this today19:51
ericsnowwwitzel3: in the meantime you can still use rbt post19:52
wwitzel3ericsnow: I haven't reinstalled it since my laptop reinstall, guess I should do that19:55
ericsnowwwitzel3: no worries19:55
ericsnowwwitzel3: you can still get a review on github if need be19:55
wwitzel3ericsnow: https://github.com/juju/juju/pull/1146 fixes bug #139239019:57
mupBug #1392390: maas zone selected for deployment that is occupied <cloud-installer> <landscape> <maas-provider> <placement> <regression> <juju-core:Triaged by wwitzel3> <juju-core 1.21:Triaged by wwitzel3> <https://launchpad.net/bugs/1392390>19:57
natefinchericsnow: sorry, kids woke up early from their naps and wife just got home from midwife and has been instructed to take it easy for a few days, so I gotta run.... also means I didn't get to that review20:01
ericsnownatefinch: no worries20:01
perrito666natefinch: tri a shot of scotch to each20:01
natefinchlol20:02
* perrito666 would be a terrible parent20:02
perrito666ericsnow: did anything change on the way the mongo backup is done?20:23
ericsnowperrito666: a little20:23
perrito666ok, what exactly?20:24
ericsnowperrito666: restore will be responsible for deleting the "ignored" databases after mongorestore runs20:24
ericsnowperrito666: should be trivial20:24
perrito666ok, but what I am asking is, should I change the parameters I use for mongo when restoring?20:24
perrito666besides that?20:25
perrito666like, did you change the way you do the dump?20:25
ericsnowperrito666: nope20:25
perrito666cool20:25
ericsnowperrito666: :)20:25
fwereaderogpeppe, yes, that is default-hook. but fwiw I think that something-changed is a better general approach, so we don't end up running the same code 500 times for no benefit21:42
rick_h_perrito666: hah, that's one way to go22:03

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