/srv/irclogs.ubuntu.com/2014/02/25/#juju-dev.txt

thumperwaigani: no real idea what is wrong with your clone00:40
* thumper goes to make fud00:40
waiganithumper: do you have the link to the prototype code for the btrfs stuff?02:05
=== mwhudson is now known as zz_mwhudson
=== tasdomas` is now known as tasdomas
* fwereade out for a bit09:07
jamdimitern: I'm going to miss the standup today, I have a management training course, can you keep everyone on track?09:17
dimiternjam, sure, no worries09:21
hazmatg'morning10:16
natefinchdimitern:  standup10:48
natefinchmgz: ^10:48
ahasenackguys, can someone look at these two bugs (dupes): lxc doesn't work with the maas provider12:22
ahasenackhttps://bugs.launchpad.net/juju-core/+bug/127421012:22
_mup_Bug #1274210: Creation of LXC bridge in 1.17.0 fails <micro-cluster> <juju-core:Fix Released by rogpeppe> <juju-core (Ubuntu):Fix Released> <https://launchpad.net/bugs/1274210>12:22
ahasenackhttps://bugs.launchpad.net/juju-core/+bug/127114412:22
_mup_Bug #1271144: br0 not brought up by cloud-init script with MAAS provider <landscape> <local-provider> <lxc> <juju-core:Triaged> <https://launchpad.net/bugs/1271144>12:22
ahasenackit's because bridge-utils is installed *after* the bridge is configured and networking is restarted12:22
ahasenackso br0 never comes up12:22
ahasenacka) configure bridge12:22
ahasenackb) restart networking (does nothing useful)12:22
ahasenackc) install bridge-utils12:23
ahasenackeither brigde-utils should be installed before (b), or (b) should happen after (c)12:23
ahasenackoh, only happens with the 1.17 series12:23
ahasenack1.16.6 works fine12:23
hazmatahasenack, bridge utils gets installed early in the 1.17.312:47
ahasenackhazmat: not in the bootstrap node12:48
hazmathmm12:48
ahasenackhazmat: the above happens in the bootstrap node, for some reason it's provisioned differently12:48
hazmatahasenack, quite possible.. could you pastebin /var/lib/cloud/instance/user-data.txt12:49
hazmaton the bootstrap node12:49
ahasenackI don't have it anymore12:49
ahasenackbut it's easy to reproduce12:49
hazmatyup12:49
hazmatno worries.12:49
* hazmat connects to a maas env12:50
ahasenackhazmat: I have a bootstrap node on maas almost up, if you're interested12:58
hazmati've got one13:03
hazmatahasenack, sure.. re pastebin of its that user-data on the bootstrap node13:03
ahasenackhazmat: http://pastebin.ubuntu.com/6994263/13:04
hazmatahasenack, oh.. i forgot.. synchronous bootstrap13:04
ahasenackhazmat: here is a bootstrap --debug from sparkiegeek: http://paste.ubuntu.com/6994260/13:05
hazmatcool13:05
hazmatdebugged in the other channel.. bridge only setup on nodes using userdata13:11
hazmatwhich doesn't include the bootstrap node.. for those following along13:11
=== edamato is now known as edu-afk
mattywdimitern, thanks for the reviews - I'll take a look at them and see what I can sort out13:35
hazmatwell more specifically bridge-utils not installled on bootstrap node till after network create/restart.13:42
hazmatwhich is basically what you diagnosed ahasenack .. just a circle to find out how.13:42
dimiternmattyw, cheers13:47
hazmatfwereade, ping15:15
fwereadehazmat, pong15:15
=== allenap_ is now known as allenap
* fwereade bbiab again15:53
wrtpfwereade, dimitern, natefinch: a review of this would be very much appreciated: https://codereview.appspot.com/6865004418:47
* wrtp is done for the day18:47
dimiternwrtp, looking18:47
fwereadewrtp, enjoy your evening18:47
wrtpdimitern: thanks18:47
wrtpfwereade: will do!18:47
wrtpdimitern: there are a couple of drive-by fixes in there that could perhaps be factored out (the testing/mgo.go one prevents a race detector complaint)18:49
dimiternwrtp, ha! i was just wondering just about that18:49
wrtpdimitern: the change in voyeur just makes it more convenient to use18:50
dimiternwrtp, ok istm those are small enough to have them in the same cl18:50
wrtpdimitern: thanks; i thought so, but opinions differ...18:51
natefinchwrtp: looking, too18:54
=== zz_mwhudson is now known as mwhudson
stokachuin juju 1.16 the bootstrap command didnt block but in 1.17 bootstrap runs synchronously and we are seeing it block for 10m19:34
stokachub/c of the way are scripts work during the cloud installation19:35
stokachushould this be considered a bug?19:35
stokachuour*19:35
wrtpstokachu: most people consider it a feature19:41
stokachuwrtp: hah19:41
stokachuwrtp: did that behavior change between those versions?19:43
natefinchstokachu: yes, behavior changed recently.  I believe it was between those two releases that it went from async to sync.  It's not a bug, it's intended, because otherwise it's hard to know when bootstrap succeeds, without spamming juju status.19:59
natefinchstokachu: you can get previous behavior by simply running bootstrap asynchronously yourself20:00
stokachujust push to the bg?20:00
stokachui thought there were talks on a switch20:01
stokachueven though its intended is it not a bug since that is a breaking change from 1.16 to 1.1720:01
natefinchstokachu: it really shouldn't break anything unless you were counting on being able to get stuff done before the bootstrap node comes up, which is essentially purposely creating a race condition20:02
natefinchstokachu: at worst it should make your script take longer, but it shouldn't *fail*20:03
natefinchstokachu: there's a bootstrap-timeout value you can set in your provider to customize how long it'll wait for bootstrap to finish.  It defaults to 10 minutes, which sounds like is not long enough for you.20:04
natefinchstokachu: there's no switch because you can just do juju bootstrap&  ... so no real need for a switch20:05
stokachuok20:05
stokachubbcmicrocomputer: ^20:05
natefinchstokachu: juju help bootstrap gives more details about customizing the timeout etc20:06
stokachunatefinch: yea we'll probably incrase the timeout and background it20:07
stokachui think that'll work, thanks20:07
natefinchstokachu: welcome20:10
thumperfwereade: ping20:15
fwereadethumper, pong, I'm *finally* looking properly at that doc20:15
thumperfwereade: ok, could talk through a few ideas, may be helpful20:15
fwereadethumper, sure, give me 5 mins to grab a drink20:16
thumperkk20:16
wallyworldthumper: do you have time for a hangout?22:58
wallyworldsinzui: hi, you still around?23:23
sinzuiI am23:23
wallyworldi found a problem with the metadata on https://juju-dist.s3.amazonaws.com/testing/tools/23:24
sinzuireally!23:24
sinzuiwell I shouldn23:24
wallyworldcan you pull up https://juju-dist.s3.amazonaws.com/testing/tools/streams/v1/com.ubuntu.juju:released:tools.json23:24
sinzuit question you.23:24
wallyworldsee line 423:24
wallyworld"version": "1.17.223:24
wallyworldthe version attr at that top level overrides the version at the item level23:25
wallyworldso it masks the various versions23:25
sinzuiwaigani, so why did juju metadata do that?23:25
wallyworldand the 1.17.4 tools metadata records are hidden23:25
sinzuiwallyworld, , so why did juju metadata do that?23:25
wallyworldthat i don't know - so you get juju metadata generate-tools ?23:26
wallyworldused23:26
sinzuiwallyworld, this looks the same, but it works. https://juju-ci.s3.amazonaws.com/tools/streams/v1/com.ubuntu.juju:released:tools.json23:26
sinzuiwallyworld, remember the logs show that the tools url was not used!23:26
sinzuiwallyworld, while we entered /testing/tools, juju used /tools23:27
wallyworldsinzui: what i did just now - i hacked juju so that it only uses tools-url, and then i did a juju metadata validate-tools23:27
wallyworldthe debug shows tools-url is used23:27
wallyworldand shows that only 1.17.2 tools can be found23:27
wallyworldsince that's the version at that top level23:27
wallyworldah23:28
wallyworld2014-02-25 23:21:03 DEBUG juju.environs.simplestreams simplestreams.go:535 using mirrored products path: https:/juju-dist.s3.amazonaws.com/tools/streams/v1/com.ubuntu.juju:released:tools.json23:28
wallyworldseems like it is getting the /tools from the mirrors file23:29
wallyworldlet me check23:29
sinzuiwallyworld, slow down you are trying to solve a hack, not the actual problem23:29
sinzuiwallyworld, I am about to update juju-ci to use the proper url, you can watch the out and see that the tool-url is wrong, it is not what we entered23:30
wallyworldok, but my debug shows tools-url is being used23:30
wallyworldand that it seems like mirrors processing then causes /tools to be used23:31
sinzuiThere are no mirror files on aws23:31
sinzuiI set this tools-url: http://juju-dist.s3.amazonaws.com/testing/tools23:31
sinzuiwallyworld, the log has started http://162.213.35.54:8080/job/aws-deploy/860/console23:31
sinzuiand I see this23:32
sinzuitools-metadata-url: http://juju-dist.s3.amazonaws.com/testing/tools.23:32
sinzuiand maybe to your point, the wrong juju was found23:32
wallyworldsinzui: while we wait, the cpc-mirros.json file on testing/tools has this23:32
wallyworld        "mirror": "https://juju-dist.s3.amazonaws.com/tools",23:32
wallyworld        "path": "streams/v1/com.ubuntu.juju:released:tools.json",23:32
wallyworldso my debug shows testing/tools is being used23:33
sinzuiwell not you your point, to my point, the wrong url was used, so it looked at what I released last week and used it23:33
wallyworldbut that then the mirrors file causes it to redirect to /tools23:33
sinzuioh!23:33
sinzuiwe don't permit mirrors files on the CPCs23:34
wallyworldhuh?23:34
sinzuionly streams gets the file23:34
wallyworldi thought we did, so that the CPCs loaded tools locally23:34
sinzuistreams.canonical.com get it, and any site I choose to use as a proxy23:34
wallyworldso you saying that testing/tools should not have a mirror file?23:35
sinzuiwaigani, but you are correct, that file got put there.23:35
waiganiwallyworld: ^23:35
sinzuiwallyworld, I am say that, nor should any CPC. why put a mirror file to the site you are on23:35
sinzuisorry waigani23:36
waiganisinzui: no problem ;)23:36
* sinzui starts purging23:36
wallyworldsinzui: if that console output had --debug that would show more info to help diagnose the issue and the search path used by simplestreams23:37
sinzuiwallyworld, I know, abentley doesn't care for that level of detail in the log23:39
wallyworldsure, normally i would agree. but it would have helped here :-)23:39
sinzuiwallyworld, new run http://162.213.35.54:8080/job/aws-deploy/861/console23:39
wallyworldmaybe we can turn it on when there's an issue23:39
sinzuithe version is correct23:39
wallyworldsinzui: my validate-tools now passes23:40
wallyworldnow that  the mirros file is removed23:40
wallyworld$ juju metadata validate-tools23:41
wallyworldmatching tools versions:23:41
wallyworld1.17.4-precise-amd6423:41
wallyworldit failed just before but works now23:41
abentleysinzui: It's not the level of detail that's the problem, it's the fact that it contain credentials.23:41
sinzuiwallyworld, in testing_to_aws in http://bazaar.launchpad.net/~juju-qa/juju-core/ci-cd-scripts2/view/head:/publish-public-tools.bash  we do filter *mirror*. it has always been that way, but If someone put one there, it will not be removed by the sync op23:41
sinzuidoes --debug contain credentials? Oh is the config output?23:42
wallyworldi would hope --debug doesn't contain credentials but if it does that sucks and should be fixed23:43
wallyworldsinzui: i've been thinking for a while i should add extra output to validate-tools to not only print the tools found but also the path from which they were got incl whether from tools-url vs cloud storage etc and whether a mirror was used23:44
abentleywallyworld: That's what I remember.23:44
wallyworldabentley: it may have been that way previously. i seem to have a vague, perhaps incorrect, recollection "someone" fixed it23:45
wallyworldi can verify that23:45
wallyworlds/can/will23:45
sinzuiwallyworld, that would be a lovely diagnostic. When I report bugs like this, I do test manually with --debug, I saw the urls switch, but did not notice the mirror use23:45
abentleywallyworld: I believe it was printing out the config, as sinzui suggested.23:45
wallyworldabentley: i think config is now sanitised to exclude credentials, but am not 100%23:46
wallyworldsinzui: if i add the extra output, the ci scripts could do a validate-tools at the state and check the output is as expected before bootstrapping and failing23:46
wallyworlds/state/start23:46
sinzuiwallyworld, they certainly can23:46
wallyworldsame for image metadata23:47
sinzuisuccess23:47
wallyworld\o/23:47
* sinzui starts the upgrade job23:47
* wallyworld crosses fingers23:47
sinzuiFinland has police raindeer. I bet the have fairy lights and bells instead of sirens23:49
wallyworldlol23:49
* sinzui restores the url for the trusty tests23:51
sinzuiI am the likely person who put the mirror file there. I can't think how, but I will take the blame23:53
wallyworldsinzui: i do also want to get to the bottom of how we got those top level version attrs in the json. i'll check the ci scripts and metadata generation cmd in juju to see what might be going on23:54
wallyworldi'm just glad we found what was happening23:54
wallyworldand it gives me an excuse to spend the time to do better diagnostics23:54
sinzuifab, all works, now that all the mirror files are deleted. Thank you very much wallyworld23:59
wallyworldno problem. pleased to help. i'm so grateful for the CI stuff you guys have done23:59

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