/srv/irclogs.ubuntu.com/2016/03/17/#juju-dev.txt

ericsnowanyone know if we are going to drop the legacy HTTP endpoints for 2.0?00:00
ericsnowsee https://github.com/juju/juju/blob/master/apiserver/apiserver.go#L43200:00
davecheneyperrito666: thanks, fingers crossed this time00:09
perrito666axw: quick question about cloud credentials schema, have a sec?00:09
axwperrito666: in 1:1, sorry00:10
perrito666no worrries00:10
axwperrito666: had to do school drop off, I'm back now if you're still around00:51
perrito666axw: solved it :)00:52
perrito666tx anyway00:52
axwperrito666: glad to be of service ;)00:52
perrito666autoload-credentials was ignoring my ~/.novarc but it works with my env variables, will file a bug later00:52
wallyworldperrito666: i did test it with ~/.novarc01:19
wallyworldi wonder what went wrong01:19
perrito666wallyworld: perhaps my novarc lacks the expected format?01:20
wallyworldyou sure the contents are correct?01:20
wallyworldit looks for the same things as env vars01:20
perrito666is a bash file full of exports01:21
perrito666odd01:21
wallyworldmaybe be a problem, not sure01:21
wallyworldweill have to retest01:21
wallyworldaxw: i'm about to propose the interactive add-credentials with the CredentialSchema ordering fix. but i'm wondering if the password entry should echo * as characters are typed or pasted01:21
perrito666wallyworld: are you sure your env was clean when you tested?01:21
wallyworldprtetty sure01:22
wallyworldi'll have a look ina bit01:22
* perrito666 finally gets a k3 bootstrap01:22
perrito666with magic auth_url auto discovery :)01:22
wallyworldyay01:22
axwwallyworld: no, I don't think so. knowing the length of the password isn't great01:23
axwwallyworld: you're using readpass, right?01:23
wallyworldaxw: yep01:23
wallyworldis just a personal preference01:23
wallyworldi want feedback that i'm typing something01:23
axwwallyworld: it's nice for visual feedback, but it is a security flaw01:23
wallyworlda small one01:24
wallyworldhard to count * :-)01:24
axwwallyworld: not if it's a short password01:24
wallyworldand who uses short passwords?01:24
wallyworldsurely everyone uses a pw manager01:24
axwwallyworld: lol :)01:24
wallyworldif not they deserve wgat they get01:24
wallyworld(half joking)01:25
mupBug #1558333 opened: juju's logging the literal "$cmd" instead of value of $cmd <juju-log> <logging> <juju-core:New> <https://launchpad.net/bugs/1558333>01:37
wallyworldperrito666: the issue with .novarc is that juju doesn't strip the export bit. my tests didn't have that01:45
perrito666so the export bit is not valid? it sure seems01:45
wallyworldthe export bit should be supported by juju01:46
anastasiamac_axw: since u r OCR, could u PTAL http://reviews.vapour.ws/r/4193/01:46
wallyworldie juju should strip it out01:46
anastasiamac_axw: it's a critical for 1.2501:46
axwanastasiamac_: sure, looking01:46
anastasiamac_axw: thanks :D01:46
perrito666wallyworld: cant yout source the file into an env and read the env? sounds like you could save a lot of future pains with that01:47
axwanastasiamac_: were there any changes to the changes required?01:47
wallyworldperrito666: sourcing the file is a shellism01:48
axwanastasiamac_: (i.e. did you just cherry pick without having to modify?)01:48
anastasiamac_axw: ? no cherry-pick was not possible01:48
axwanastasiamac_: I see, you said re-work01:48
axwnps01:48
anastasiamac_axw: the commits have other stuff in them like lxd for eg..01:48
wallyworldperrito666: i was hoping to avoid execing shell command01:48
axwright, of course01:49
anastasiamac_axw: however, the related code is exactly as onmaster01:49
axwanastasiamac_: okey dokey01:49
anastasiamac_axw: except for renaming model stuff :P01:49
perrito666wallyworld: I would expect to be a way to wrap that into go by running a child env and do whatever that env supports as source (but then again, I am guessing, a lot)01:50
wallyworldi didn't see an obvious way, maybe there is01:50
wallyworldit's easy enough to tweaks what there already to work01:51
axwanastasiamac_: LGTM, thanks01:54
anastasiamac_axw: \o/01:54
perrito666wallyworld: axw credentials schema fields cannot be made optionals?01:58
wallyworldperrito666: they can as of recently01:59
perrito666wallyworld: is that on master?01:59
wallyworldOptional: true01:59
wallyworldyes01:59
wallyworldperrito666: i did it just for you01:59
wallyworldto support keystone 302:00
perrito666you are wonderful, pint me to plz?02:00
wallyworldEPARSEERROR02:00
wallyworldif you grab master tip, you can use Optiona: true in credential schema02:01
perrito666grrrreat02:01
wallyworldaxw: fyi, ignore the charm-minvers feature branch pr, that's s merge into master i'm landing now02:19
axwwallyworld: ok, thanks02:19
perrito666k I have it working and almost fixed the joyous openstack live tests to reflect that, my brain is out of order for the day, see you all tomorrow02:25
perrito666wallyworld: axw anastasiamac_ I would love  a review of https://github.com/go-goose/goose/pull/19 during the night02:26
perrito666cheers02:26
wallyworldour night or yours?02:26
axwperrito666: will see how I go, got lots to review today02:27
wallyworldi can look02:27
anastasiamac_perrito666: nite \o/02:27
perrito666wallyworld: yours I need to et all this merged tomorrow02:28
perrito666no sorry mine02:28
perrito666mybrain is dead02:28
wallyworldperrito666: i was being facecious :-)02:28
wallyworldi knew what you meant :-)02:29
natefinchaxw: can I get one more quick review on the stringmap thing?  realized I was missing handling an error case: https://github.com/juju/cmd/pull/3203:38
axwnatefinch: looking03:40
natefinchaxw: thanks03:40
axwnatefinch: done03:41
natefinchaxw: thanks!03:42
natefinchand now to figure out how to finagle these full stack tests to succeed when the server doesn't actually support this endpoint...04:05
davecheney  /win1204:23
menn0axw: this is pretty horrible but necessary: https://github.com/juju/juju/pull/4766 PTAL04:30
* axw braces04:31
natefinchmenn0: is there a bug filed for that on go-yaml?04:33
menn0natefinch: not yet, but I've just created a card for myself on our board to do that04:34
anastasiamac_menn0: is it worthwhile back porting to 1.25... I think that the bug would be awesome too \o/04:34
natefinchanastasiamac_: are we supporting go 1.6 for 1.25?04:34
mupBug # changed: 1499781, 1504578, 1526926, 152912604:35
menn0natefinch: it's an involved bug report to write up so I'll do it next week04:35
menn0anastasiamac_: the code that was relying on private embedded types only exists in Juju 2.004:35
menn0anastasiamac_: we'd know about it if we were relying on this elsewhere04:35
anastasiamac_menn0: then no need for 1.25 :D04:35
* menn0 has lost hours on this04:36
axwmenn0: what's the deal with all the trailing underscores?04:36
anastasiamac_menn0: but for reference, I can see CI tests that run against 1.25 with go 1.604:36
natefinchaxw: they give you a place to rest your mouse when your arm gets tired04:36
axwnani04:37
menn0axw: Tim came up with that as a way to avoid collisions between field names and the method names he wanted to use04:37
anastasiamac_natefinch: such small mouse tho :D04:37
axwmenn0: ah, right, ok04:37
menn0axw: i've continued with the trend04:38
axwmenn0: reviewed04:39
menn0axw: thanks04:39
menn0axw: I clearly didn't re-run the tests after removing that debugging Dump method :)04:40
axw:)04:40
jamaxw: davecheney: I pushed a small update because of a case I found in Juju (we were calling AddCleanup during SetUpSuite()), can you give it one more quick look?05:59
axwjam: LGTM. there's a bug somewhere (I think rogpeppe filed it) suggesting that we should just have AddCleanup, and DTRT whether we're in SetUpSuite or in/after SetUpTest06:02
axwjam: probably need to change tests to do that tho06:02
jamaxw: I could do that here, with just checking if s.testSuite is nil06:02
jamaxw: does that sound sane?06:03
axwjam: yeah, I'm just not sure if anything is relying on current behaviour06:03
jamaxw: if it is, its broken06:03
jamassuming AddCleanup during a Suite level operation will be cleaned up after the first test run...06:03
jamwe could keep AddSuiteCleanup as an explicit thing06:03
jambut calling it in a Test context and assuming it will last the rest of the Suite is also broken behavior06:04
jamOne test should not set global state for another test to expect06:04
jamaxw: then again, if the Juju test suite *does* have those bugs, I don't know how many I can fix :)06:04
axwjam: indeed :)06:04
axwjam: I'd be happy to drop AddSuiteCleanup and have AddCleanup add suite-level things when called in SetUpSuite, and test-level things otherwise06:05
axwit's just a sed command to rename AddSuiteCleanup to AddCleanup after that06:05
axwjam: if you want to defer removing/renaming, that's fine though. we can do that later06:06
jamaxw: trying to think how to write the tests for it.06:06
jamI think making it safe and easy to use is best06:06
jamso users don't have to think "Can I call it now"?06:07
jam(heirarchy of good API, "make the obvious thing correct" vs "make the wrong thing hard to do"06:07
jam)06:07
jamaxw: it also leads to helpers like PatchValue where you can't control whether it is Suite level or Test level.06:07
axwjam: just read your latest email; the bug I was thinking of was actually about PatchValue. same sort of deal though06:07
jamaxw: yeah, the fact that BaseSuite itself had this bug06:08
jammeans we can *easily* have lots of tests that are actually doing Outbound tests06:08
axw:\06:08
jamand we didn't notice because we thought we were protected by BaseSUite06:08
axwwallyworld: we're still using CompatSalt in cloudconfig/instancecfg, and I don't think there's any reason to. The hash is a temporary, derived password - we shouldn't need to use a fixed salt06:18
wallyworldaxw: yeah, i figured that change was a separate pr06:19
axwwallyworld: ok06:19
jamaxw: can you look at the pull?06:42
jamhttp://github.com/juju/testing/pull/9206:42
axwjam: looking06:42
jamthx06:42
jamor davecheney^^06:42
jamaxw: interestingly "home_test" was a case where we were setting up another test suite, and calling SetUpTest but not SetUpSuite06:44
axwjam: LGTM, thanks. there's a couple of odd SetUpTest calls in home_test, but just style issues really06:50
axwand preexisting at that06:50
jamhome_test is trying to test the test itself by creating another test object.06:51
jambut it is calling SetUpTest without ever calling SetUpSuite06:51
axwjam: ah, I see.06:51
jamand we're now at... a whole lot of failures in Juju proper...06:51
axw:/06:51
jamFakeHomeSuite is doing something bad.06:52
axwjam: because they were swept under the rug?06:52
jamlots of tests use it06:52
axwlots of outbound connections? :)06:52
axwoh home suite06:52
jaminvestigating, because I don't see anything bad yet06:53
jamFakeJujuXDGDataHomeSuite calls SetUpTest during TearDownSuite ?06:53
jamaxw: testing/environ.go line 10706:54
jamwhy is TearDownSuite calling Suite.SetUpTest() ?06:54
jamI think that's just a copy&paste typo06:55
axwjam: heh, yep, I'd say so06:55
axwjam: since 2014 :)06:56
jamaxw: love it when our base infrastructure has some weird bugs in it.06:56
jamaxw: SetUpSuite is *also* calling SetUpTest instead of SetUpSuite06:57
axwlol06:58
jamand JujuOSSuite doesn't implement either SetUpSuite or TearDownSuite, so we don't need to write our own anymay06:58
jamanyway06:58
jamaxw: or is it better to have one and just a line that says "this other one doesn't need to be called cause it doesn't exist" ?06:59
axwjam: I've not found one way or the other to be much better07:00
axwleaving it out is probably OK07:00
axwjam: I'd love to write a static analyser one of these days to check that they're all wired up correctly07:00
jamaxw: yeah, the main problem is that once someone does introduce a SetUpSuite then we should call it, but neither way is going to catch that on its own07:00
* axw nods07:01
jamso it looks like we do have at least 1 failure in Provisioning suite07:19
jamwhere it is actually reading cloud-images somehow07:19
jamthough it is failing in the opposite way I was expecting07:21
jammaybe FakeXDGHome was accidentally making it harder to get outside access by calling SetUpTest all the time?07:22
wallyworldaxw: i'm off to soccer soonish, i've reposnded to some of the comments on the add credentials review. i'll finish the interactive prompt for replace when i get back07:32
axwwallyworld: thanks, I'm just responding now07:33
axwenjoy07:33
wallyworldleaving in 20 minutes r so07:33
wallyworldwill do07:33
jamaxw: ugh. we have test suites that want to call PatchValue before they call their Base type's SetUpTest because SetUp does work that they want to patch out07:34
axwjam: ugh indeed07:36
axwjam: example?07:36
jamprovider/lxd/07:36
jamtesting_test.go07:37
jamthere is a BaseSuiteUnpatched and a BaseSuite07:37
jamand BaseSuite embeds BaseSuiteUnpatched which embeds IsolationSuite07:37
jamso BaseSuite patches an object, then calls BaseSuiteUnpatched.SetUp07:37
jamline 27707:38
jamaxw: ^^07:38
jamprovider/joyent/joyent_test.go calls envtesting.PatchAttemptStrategies() before calling base .SetUpSiet()07:39
jamSetUpSuite()07:39
axwjam: yup. I think in the lxd case it could be moved to BaseSuite.SetUpSuite07:39
axwjam: that one's a bit different, it's not involving the suite07:40
jamaxw: provider/joyent/local_test.go line 15507:40
jamcalls PatchValue for 2 things before calling providerSuite.SetUpSuite()07:40
axwjam: AFAICT, it doesn't need to07:42
jamthat also looks like it was honestly broken because the lifetime of that PatchValue should be wrong07:42
* axw digs07:42
axwtrue07:42
jammy "go test ./...." is 5000 lines with this change to AddCleanup...07:42
axwjam: yeah, those 2 patches can come after SetUpSuite07:44
axwjam: 5000 lines? huh?07:44
jampanic tends to create a fair bit of traceback07:45
jamand SetUp failures fail on all the associated tests07:45
jamso it is bigger than probably it seems07:45
jambut its a fair bit to dig through07:45
jamaxw: provider/joyent/local_test.go adds a *AddSuiteCleanup* that patches the attempt strategies to ShortAttempt07:47
jamI don't see it patch them to something longer first.07:47
jammy rabbit hole has gotten too deep, I think07:48
axw:)07:48
axwjam: probably just cruft, but I don't know for sure07:49
jamaxw: I *did* finally hit tests that are going to cloud-images07:50
jamand failing now because they can't07:50
jamlocalLiveSuite.TestStartStop for provider/ec207:50
jam"signature made by unknown entity"07:51
axwjam: yep, SetUpSuite calls PatchOfficialDataSources which calls PatchValue07:52
* axw has to go feed children07:53
jamaxw: have a good evening07:54
jamneed to get out a swear jar...07:55
* frobware wakes up to find maas-spaces2 has merged. \o/08:57
frobwaredimitern: about to push your branch as upstream/maas-spaces-multi-nic-containers09:31
dimiternfrobware, great! and I've seen maas-spaces2 get merged! cheers09:33
frobwaredimitern: if we don't do lxc then CI tests will fail. How do we not do this for the moment is not clear (to me at least).09:33
dimiternfrobware, well lxc-broker is still there, so ..09:34
frobwaredimitern: we need to bung this branch (@ 07693b816c207bc6e3fa9d7dd3f76784a695908e) to the OS folks for testing...09:35
frobwaredimitern, voidspace: upstream/maas-spaces-multi-nic-containers is now soliciting commits... :)09:36
frobwaremgz, sinzui: please can we add upstream/maas-spaces-multi-nic-containers to the CI jobs (assuming something explicitly needs to be setup). thanks!09:38
voidspacefrobware: cool09:40
dimiternfrobware, I have some commits in mind to add :)09:40
dimiternvoidspace, frobware, we should also delete maas-spaces2 from upstream soon09:41
mgzfrobware: pushing it into the juju namespace is all that's needed09:45
frobwaremgz: thanks09:46
dimiternfrobware, about that fancycheck - it was temporary, now it can be dropped09:47
dimiternfrobware, and we should do that before the CI run right?09:47
frobwaredimitern: submit a PR, we can now review, commit in the usual way. ;)09:48
dimiternfrobware, on it09:49
voidspacedimitern: frobware: is maas-spaces2 landing on master today then?09:52
dimiternvoidspace, it already landed yesterday09:52
voidspacedimitern: hah, cool09:53
TheMuemorning saphires o/ *yawn*09:58
dimiternTheMue, hey o/ morning09:58
voidspaceTheMue: 0/10:00
dimiternvoidspace, frobware, http://reviews.vapour.ws/r/4210/10:01
natefinch team meeting anyone?10:03
* TheMue currently not *lol*10:04
voidspacedimitern: frobware: I'm down to 11 failures on my branch (from 33 yesterday) - several of them about to be fixed by a change to gomaasapi10:10
voidspace(gomaasapi test server)10:11
perrito666morning all10:13
perrito666natefinch: is there anyone in the tm?10:14
natefinchperrito666:  a efw people10:15
natefinchperrito666: me, william, michael, and dimiter10:16
frobwaredimitern, voidspace: sorry, was otp. Want to do a quick standup?10:17
voidspacefrobware: in team meeting10:17
fwereadejam, I would love to help you with IsolationSuite horrors, but... probably not today10:28
voidspacedimitern: want to drop back in for standup?10:29
dimiternvoidspace, sure10:29
dimiternvoidspace, frobware, I'm the only one there though10:30
voidspacedimitern: we stayed in the team meeting room...10:31
voidspacedimitern: as we were there already10:31
dimiternah10:31
voidspacehence "drop back in"10:31
TheMueBtw, Happy St Patricks Day10:56
voidspacedown to 7 failures and deleted more code11:20
voidspacesome unused production code some unused test helpers11:21
jamthanks fwereade. I'm going to try and get some more of my LXD stuff done, but I did make a bit more progress on the Isolation stuff. Its actually closer than I was worried it would be.11:37
fwereadebefore I go spelunking... can anyone suggest a foolproof way of inducing a StartSync on... whatever *state.State in the background is *actually* driving events for a hosted model running under a jujud test?12:41
fwereadejam, dimitern, axw, wallyworld perhaps? ^^12:42
iceyjuju's PPA needs to be updated, currently throwing warnings on Xenial due to https://bugs.launchpad.net/ubuntu/+source/apt/+bug/155833112:42
mupBug #1558331: After upgrading to apt 1.2.7 in Xenial, PPAs and most other third-party repositories become unusable with "The repository is insufficiently signed by key  (weak digest)" <xenial> <apt (Ubuntu):Confirmed> <https://launchpad.net/bugs/1558331>12:42
wallyworldfwereade: isn't there a StartSync() method or something to trigger a sync?12:42
fwereadewallyworld, yeah... but you need to call it on the right *State12:44
wallyworldthat is correct, it can be confusing12:44
fwereadewallyworld, we have access to .BackingState12:44
fwereadewallyworld, but I have a horrible feeling that the state that's backing the apiserver we talk to is hidden away in a statepool somewhere out of reach12:45
wallyworldi haven't looked at that stuff in ages. i do recall it being somewhat funky. i have not good answer for you12:45
fwereadewallyworld, (.BackingState is the one for the controller model, but it doesn't cause hosted models to get events12:45
fwereade)12:45
fwereadewallyworld, no worries, looks like I need to go hunting12:46
wallyworldyeah, sorry12:46
alexisbfrobware, ping13:30
natefinchI am sad that juju controllers is not an alias for juju show-controllers13:38
rick_h__natefinch: list-controllers?13:38
natefinchty13:38
natefinchit's show-controllers13:39
natefinchoh, I guess it's both13:39
rick_h__show-controller is against once controller?13:39
rick_h__it gives metadata for one, the other is the listing13:39
natefinchoh that is confusing13:39
rick_h__show-X is "give me details of one" and list- "give me a table of them"13:40
frobwarealexisb: pong13:40
alexisbheya frobware see private chat13:40
natefinchrick_h__: but then why is there a show-controllers (note plural)?13:40
rick_h__natefinch: not sure on that one13:40
alexisbnatefinch, it may be that the alias still exists on that one13:41
alexisbI owuld have to go look13:41
natefinchrick_h__: looks like you can pass in multiple controller names and it'll show you details for all13:41
alexisbat first we were doing both the single and plural case for everything13:41
natefinchs/all/each13:41
natefinchif you pass in 0 controller names, it shows you details for just the current13:42
natefinchshow vs. list is very confusing IMO.13:42
natefinchbut it looks like we have a lot of each13:42
rick_h__yes, it's one of the base principles of it. Very common across all nouns can be shown or listed13:43
dimiternfrobware, voidspace, http://reviews.vapour.ws/r/4212/ fixes an issue found with multi-nic support14:13
natefinchI swear I am never ever ever going to get used to bootstrap having the name first14:18
rick_h__natefinch: don't get used to it, branch changing that lands soon hopefully14:18
natefinchrick_h__: oh thank goodness14:18
rick_h__natefinch: oh, sorry you mean the cli14:19
rick_h__that's not changing, though tyou meant the name of the first model14:19
rick_h__lol, in which case sorry14:19
natefinchaww!14:19
natefinchhow come when I juju bootstrap mylocal lxd ... it creates a juju controller named local.mylocal?14:20
rick_h__the local is for multi-user situation. You might add controllers from other users that already have that name14:21
natefinchrick_h__: but if I don't... then you've just munged my namespace for no reason14:22
rick_h__natefinch: you should be able to leave it off and we can visit ways of streamlining14:22
rick_h__but had to design for the big case and work backwards14:22
dimiternvoidspace, frobware, we should get it in to have a chance of a blessed ci run14:30
dimitern^^14:30
frobwaredimitern: looking now14:30
dimiternfrobware, cheers14:30
frobwaredimitern: reviewed14:48
dimiternfrobware, thanks - updated, pushed, and set to merge14:48
frobwaredimitern: did you see the ci results of the first one?14:48
* natefinch needs to make an auto-dependencies.tsv merge tool14:49
dimiternfrobware, yeah - as expected pretty much - the fancycheck14:49
dimiternfrobware, and most of the other issues should be resolved by the last fix14:49
dimiternfrobware, btw I managed to repro the empty mac address at setInstanceInfo for containers, looking into it14:50
frobwaredimitern: I was in 2 minds about whether to push the branch this morning; I didn't think the CI run would happen that quickly given all the other feature branches that are being tested.14:50
frobwaredimitern: oooh. And, btw, the reason the attach <pid> failed is I didn't start the remote end as root.14:50
dimiternfrobware, they made some changes recently - there was a mail about it14:50
dimiternfrobware, ah! :)14:51
frobwaredimitern: what was the macaddr issue?14:51
dimiternfrobware, I have a suspicion why it might be happening14:51
frobwaredimitern: ok, going to ignore that and look at profiles again14:52
dimiternfrobware, the MACAddress coming from PrepareContainerInterfaceInfo gets lost when trying to set the container devices in state14:52
dimiternfrobware, +114:52
mupBug #1558608 opened: maas-spaces-multi-nic-containers cannot bootstrap <block-ci-testing> <juju-core:Incomplete> <juju-core maas-spaces-multi-nic-containers:Triaged> <https://launchpad.net/bugs/1558608>15:03
mupBug #1558608 changed: maas-spaces-multi-nic-containers cannot bootstrap <block-ci-testing> <juju-core:Incomplete> <juju-core maas-spaces-multi-nic-containers:Triaged> <https://launchpad.net/bugs/1558608>15:06
mupBug #1558608 opened: maas-spaces-multi-nic-containers cannot bootstrap <block-ci-testing> <juju-core:Incomplete> <juju-core maas-spaces-multi-nic-containers:In Progress by dimitern> <https://launchpad.net/bugs/1558608>15:15
mupBug #1558612 opened: creating hosted model config: maas-agent-name is already set; this should not be set by hand <bootstrap> <ci> <maas-provider> <test-failure> <juju-core:Incomplete> <juju-core admin-controller-model:Triaged> <https://launchpad.net/bugs/1558612>15:15
mupBug #1558608 changed: maas-spaces-multi-nic-containers cannot bootstrap <block-ci-testing> <juju-core:Invalid> <juju-core maas-spaces-multi-nic-containers:Fix Released by dimitern> <https://launchpad.net/bugs/1558608>15:45
mupBug #1558087 changed: TestInvalidFileFormat fails on windows because of / <blocker> <ci> <regression> <test-failure> <windows> <juju-core:Fix Released by cmars> <juju-core model-acls:Fix Released by cmars> <https://launchpad.net/bugs/1558087>16:15
dimiternvoidspace, btw I've found out the main reason why discoverspaces worker seems to make a lot of calls16:31
dimiternvoidspace, it does call CreateSpaces and AddSubnets once for each space / subnet16:31
dimiternvoidspace, I'm testing a patch now which takes advantage of the bulk nature of both api methods, so calls each of them once per handleSubnets() call16:32
dimiternshould make the discovery much quicker hopefully, and resolve some issues where subnets might be missing when trying to use them (e.g. for machine devices' addresses)16:33
voidspacefrobware: that test passes"16:38
voidspaceI meant !16:38
voidspacedimitern: I didn't know it seemed to make a lot of calls16:38
voidspacedimitern: but cool16:38
voidspacedimitern: I'm down to 1 failing test on drop-maas-1.816:39
dimiternvoidspace, great!16:39
frobwaredimitern: is that "resolve some issues where subnets might be missing" at all related to the mac address we were looking at earlier? (surprised if so, but...)16:42
dimiternfrobware, not clear yet16:43
dimiternfrobware, I did discover an issue with that fix though16:43
frobwaredimitern: from the is not alive?16:43
frobwaredimitern: might want to make sure that bulk method is in 2.0 before getting too far16:44
dimiternfrobware, because the machiner starts before discoverspaces, it will not set the subnetID for yet-undiscovered subnets16:44
voidspacedimitern: will the bulk calls take into account that discovery might have already run and some of the spaces / subnets might already exist? (but some might not)16:44
dimiternfrobware, it's already bulk16:44
dimiternvoidspace, it does I think - at least it works idempotently16:44
voidspacefrobware: the bulk api calls are our code16:44
frobwarevoidspace: ok16:44
voidspacedimitern: there were some tests for that16:44
mupBug #1558657 opened: many workers still don't use clocks <tech-debt> <juju-core:Triaged> <https://launchpad.net/bugs/1558657>16:45
dimiternvoidspace, I didn't have to change the tests after changing CreateSpaces and AddSubnets calls to be done once in bulk16:45
mupBug #1558668 opened: api_undertaker_test is not a feature test <tech-debt> <juju-core:Triaged> <https://launchpad.net/bugs/1558668>16:45
dimiternthey still passed ok16:45
dimiternand a quick live tests showed the difference: in a few seconds the discovery was done (a lot less log spam around "caching subnets.." and also 2 vs 3 messages at bootstrap saying Spaces discovert still in progress)16:46
dimiternthat wasn't enough apparently - the machiner manages to call SetObservedNetworkConfig a couple of seconds before spaces discovery completes :/17:01
dimiternso I'm thinking that we should block MA logins until discovery completes... testing this live now17:01
fwereadeI'm pretty sure we shouldn't be blocking MA logins for anything, a huge amount of our functionality depends on it17:09
fwereadedimitern, ^^17:09
fwereadedimitern, I think this is another reason to set space-discovery-completed in state persistently17:09
fwereadedimitern, and expose getter/watcher for whatever things need to wait on it?17:10
dimiternfwereade, I know it shouldn't, I'm just trying to see if it might help as an experiment17:10
voidspacedimitern: hah, the repeated building of the subnet cache is still a bug in the cache code though right?17:10
dimiternfwereade, I agree it needs to be recored in state once done17:10
fwereadedimitern, fair enough17:10
dimiternvoidspace, it is, but the cache was done with the assumption it will be used for bulk-style calls17:11
voidspacedimitern: so it's cache once per call by design17:11
voidspacedimitern: fwereade: yeah, I can't think of another reliable way other than storing in state when discovery is completed17:11
voidspacenot an alternative that meets all the use cases we have (HA, multiple models etc)17:12
dimiternvoidspace, fwereade, and we have another case already - the peergrouper needs to know the spaces discovery is done before deciding the common space all controllers are in17:12
voidspacedimitern: right17:13
dimiternvoidspace, why did we decide not to block until the discovery has started? in case the worker does not start at all?17:14
voidspacedimitern: because it blocks access for all models when you start discovery for one model17:14
mgzdimitern: should container networking on master work with kvm on maas?17:14
fwereadedimitern, voidspace: I think we probably should block, it's just that you can't do it safely without a persistent flag17:14
dimiternmgz, not really17:15
voidspacefwereade: dimitern: agreed, we need to do it right17:15
mupBug #1558678 opened: manual bootstrap: PrepareForCreateEnvironment not implemented <bootstrap> <ci> <manual-provider> <regression> <juju-core:Incomplete> <juju-core admin-controller-model:Triaged> <https://launchpad.net/bugs/1558678>17:15
dimiternmgz, is the the addressable containers job?17:15
voidspacefwereade: dimitern: we disabled it because it was broken in several ways17:15
mgzdimitern: yeah17:15
voidspacedimitern: it also didn't block access *until* discovery started - which meant bootstrap could complete before the block was in place17:16
fwereadevoidspace, dimitern: see RB4110 for how the discoverspaces worker will shortly be invoked17:16
dimiternmgz, I wouldn't care too much about it - addressable containers are dying, just haven't died yet17:16
dimiternfwereade, will check that17:16
dimiternfwereade, what I'm currently seeing is that the machiner is consistently starting 2 seconds before discoverspaces17:17
fwereadedimitern, I would expect the machiner to start beforehand usually, yeah, that's top-level whereas discoverspaces is only triggered once we've got a modelworkermanager looking for models to manage17:17
dimiternfwereade, which messes up setting the observed network config - I guess that must be done in a periodic worker instead of the machiner17:18
fwereadedimitern, I can well believe it wants to be split out of the machiner, yeah17:18
mgzdimitern: well, the problem is we don't have a good working spaces/new networking functional test17:18
dimiternas it currently does not retry / update the observed config later17:18
fwereadedimitern, yeah, and running a worker with multiple watchers is generally painful, even with catacomb17:18
dimiternmgz, how about the bundle-based one?17:19
fwereadedimitern, far better to separate the responsibilities completely17:19
dimiternfwereade, indeed, I'll look into that17:19
mgzdimitern: point me at it!17:20
dimiternmgz, let me have a look17:21
dimiternmgz, this one for example http://reports.vapour.ws/releases/3771/job/maas-1_9-OS-deployer/attempt/49617:22
mgzright, we do exercise a bunch of stuff with that, but not kvm (or fancy subnet stuff)17:22
perrito666dimitern: could you $$merge$$ -> https://github.com/go-goose/goose/pull/19 and tell me who else is in the merge team so I dont pick on you all the time?17:23
dimiternmgz, kvm won't work with multi-nic, but it should still work with a single nic17:23
dimiternperrito666, done17:24
perrito666tx17:24
* dimitern needs to step out for ~1h17:25
frobwaredimitern: you still there.17:36
frobwareah ^^ - nope17:36
mgzfrobware: are you capturable atm?17:38
mupBug #1558703 opened: PatchValue unsafe for SetUpSuite <testing> <unit-tests> <juju-core:Triaged> <https://launchpad.net/bugs/1558703>17:45
voidspacefrobware: dimitern: https://github.com/juju/gomaasapi/pull/10/files18:06
voidspacefrobware: dimitern: all tests now pass on my branch18:13
voidspaceall *maas* tests  - need to do a full test run18:13
voidspacefrobware: dimitern: I need that gomaasapi branch to land so I can update dependencies.tsv18:13
frobwarevoidspace: looking18:18
dimiternvoidspace, looks good18:18
dimiternfrobware, hey, I just got back, but I'm thinking of declaring EOD18:20
frobwaredimitern: ok, me too. too many distractions since our lxd investigation earlier.18:20
dimiternfrobware, I've found out that last fix I did was not sufficient18:21
frobwarevoidspace: I'll hang around for your branch and push that upstream so we can get a CI run18:21
frobwaredimitern: fresh thinking comes in the morning. :)18:21
dimiternfrobware, i.e. it will likely cause most failing jobs to pass, but it will break network-get18:21
dimiternfrobware, but I have a fix in mind that will take care of that - but as you said - morning :)18:21
frobwaredimitern: that's ok isn't it? (apart from unit test failures)18:21
dimiternfrobware, it's ok for tonight I guess18:22
frobwaredimitern: push it - we wake up to a CI run18:25
dimiternfrobware, will do - it'll take a couple of hours to implement and test, so that's my plan for tomorrow first thing18:26
frobwaredimitern: sounds good18:27
voidspacefrobware: I have a provisioner unit test failure on wrong number of network.InterfaceInfo returned18:40
voidspacefrobware: I'll look at it in the morning, should be able to get it done first thing18:40
voidspacefrobware: oh wait18:41
voidspacefrobware: that fails due to missing lxcbr0, that may fail on master for me as well18:41
voidspacefrobware: and indeed it does fail in the same way18:42
voidspacefrobware: my gomaasapi branch has landed, I'll fix dependencies.tsv and push18:43
voidspacefrobware: right branch pushed18:47
voidspacefrobware: ready for a CI run18:47
arosaleshello juju core folks :-)18:47
voidspacefrobware: *requires* maas 1.918:47
voidspaceand that's me EOD18:47
arosalesNeed some help on a power8 stack trace18:47
voidspaceg'night all18:47
arosaleshttps://bugs.launchpad.net/juju-core/+bug/155873418:47
mupBug #1558734: POWER8 agent stacktraces and refuses to boot <juju-core:New> <https://launchpad.net/bugs/1558734>18:47
rick_h__natefinch: quick check, if I update my charm with a min-version, and I do attempt to deploy it on older Juju what happens?19:03
natefinchrick_h__: it deploys19:03
rick_h__natefinch: ok, so Juju doesn't freak about the unknown attribute?19:03
natefinchrick_h__: nope... one of the nice things about the way we deserialize the data in there... anything we don't recognize we ignore19:04
natefinchrick_h__: in this particular case, it would kind of be nice if we got a "error, can't deploy, unrecogized data in metadata: min-juju-version"  .... but, alas, it'll just ignore it and deploy.19:05
rick_h__natefinch: ok19:05
mupBug #1558734 opened: POWER8 agent stacktraces and refuses to boot <juju-core:New> <https://launchpad.net/bugs/1558734>19:09
frobwaremgz: still about?19:28
mupBug #1558769 opened: unable to create-model in azure <juju-core:New> <https://launchpad.net/bugs/1558769>20:30
perrito666I broke restore? :( that  is ironic21:52
mupBug #1558803 opened: Manual deploy on ppc64el wants wrong package and agents <ci> <manual-provider> <ppc64el> <regression> <juju-core:Incomplete> <juju-core admin-controller-model:Triaged> <https://launchpad.net/bugs/1558803>21:55
arosalesmwhudson: marcoceppi still seeing juju peg the cpu on power8, any suggestions?23:38
mwhudsonarosales: is this a power8 where c programs like dpkg actually work?23:38
mwhudsonbecause debugging firmware issues via juju seems insane23:38
arosalesthey have been working, I am not sure if they have tested lately23:39
arosalesmwhudson: ack I am not asking you to debug firmware via Juju23:39
arosalesmwhudson: I am dumb, but not that dumb23:39
arosalesmwhudson: just asking if you had any suggestion for marcoceppi given juju was pegging the cpu23:40
mwhudsonarosales: basically, no23:40
mwhudsonif you can give me access, i can poke around23:40
mwhudsonbut as i said in other mail, testing something built with golang-go rather than gccgo would probably be more useful overall23:40
menn0wallyworld: would you be able to look at http://reviews.vapour.ws/r/4218/ pls?23:41
wallyworldsure23:41
arosalesmwhudson: marcoceppi may chime with access here in bit, but it is dinner time for him23:41
arosalesmwhudson: juju 2.0 built any different than 1.25?23:42
mwhudsonarosales: not entirely my department, but, gosh, i certainly hope so23:42
mwhudsonarosales: you are testing trusty, i assume?23:42
arosalesok so perhaps we try juju 2.0 on that machine23:42
arosalesmwhudson: yes trusty atm23:42
wallyworldarosales: we are moving to use golang 1.6 for building but afaik are not quite there yet23:43
arosalesah so testing 2.0 doesn't help there -- gotcha23:45
arosalesmwhudson: fyi golang-go is indeed the problem and not recommended, and we build juju 2.0 GA with go-lang and we run into these issues we will be in a world of hurt23:46
arosalesmwhudson: something to be aware of23:46
arosaleswallyworld: thanks23:46
mwhudsonarosales: i don't understand23:47
arosalesmwhudson: there is no current juju (stable or dev) that is build with golang 1.623:48
arosalesif 2.0 ends up being built wiwth gcc-go 4.9 it seems like we would be in world of hurt for juju 2.0 ga23:48
mwhudsonarosales: juju for xenial for amd64 is built with go 1.623:48
arosalesmwhudson: that is counter to wallyworld's statement23:50
arosalesmwhudson: pehaps wallyworld was saying for ppc64el23:50
wallyworldarosales: mwhudson: the aim is we will be using golang 1.6 to build for all architectures for 2.0 is my understanding23:50
arosalesmwhudson: which having amdb64 built with go 1.6 doesn't help much with the known issues on power8le23:50
mwhudsonarosales: many axes of variation :/23:52
arosalesindeed, but in the end power8le seems broken on 1.25 built with gcc-go 4.923:53

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