/srv/irclogs.ubuntu.com/2015/08/12/#juju-dev.txt

mwhudson_davecheney: so i talked to steve and we're going to go for uploading go1.5rc1 within a week00:08
mwhudson_davecheney: enabling arm64 and ppc64el (with your patch!)00:08
mwhudson_davecheney: i wanted to give you a chance to yell and say "don't enable it for ppc64el" or similar00:08
mwhudson_davecheney: is there anyone else I should talk to about this? (qa team?)00:09
davecheneymwhudson_: i'm testing ppc64 right now00:19
davecheney./all.bash passes00:19
davecheneyand i'm doing juju stress tests today00:19
davecheneyso, yes, please include that patch in rc100:19
davecheneythere _will_ be a 1.5rc200:19
davecheneyprobably at the end of the week00:20
davecheneyi dunno if my patch will make it in00:20
mupBug #1483932 opened: unexpected public-address when lxc container has 2 NICs and IP addresses <juju-core:New> <https://launchpad.net/bugs/1483932>00:24
davecheneymwhudson_: russ +2'd my patch to disable duffzero00:28
mwhudson_davecheney: oh ok, maybe we'll upload 1.5rc2 then, depends on timings00:28
davecheneyi'll commit it in a few hours once' i've done some more testing00:28
mwhudson_davecheney: yay!00:28
* mwhudson_ disappears for a bit00:29
axwwaigani cherylj: I'd really appreciate reviews of http://reviews.vapour.ws/r/2332 before any of my other branches. this needs to land before the freeze next week; preferably this week, since I'm sprinting next week02:26
waiganiaxw: I'm half way through 2331, should be done soon. Then I'll get onto that one02:28
axwwaigani: awesome, thanks02:28
menn0thumper: forgot to say. a number people have been hitting bootstrap problems where it appears mongodb isn't starting02:39
menn0thumper: it's happening on both upstart and systemd systems02:40
menn0thumper: https://launchpadlibrarian.net/213796443/juju_debug_output.txt02:40
menn0thumper: bug 146857902:40
mupBug #1468579: juju bootstrap failed - cannot dial mongo to initiate replicaset: no reachable servers <bootstrap> <mongodb> <oil> <juju-core:Triaged by menno.smits> <juju-core 1.24:Triaged by menno.smits> <https://launchpad.net/bugs/1468579>02:40
menn0thumper: I need to give that some attention soon as well02:40
thumperhmm...02:44
thumpermenn0: do you know what the cause is?02:44
menn0thumper: no idea... I was kinda thinking a systemd integration issue, but james page has just reported the issue on trusty02:45
menn0thumper: i'm going to ask people to provide /var/log/syslog for when the problem happens. that might tell us if/why mongod isn't starting02:46
* thumper nods02:46
lazyPowerthumper: o/02:48
thumperlazyPower: 'sup?02:49
lazyPowerJust checking in on ya, i haven't pulse checked django in a while02:49
thumperhmm...02:50
thumperI've been a bit lax02:50
thumperalthough likely to roll out some personal changes soon02:50
thumperso no doubt, a few pushes upstream02:50
lazyPowerno stress, the last time we spoke you were working on workers02:50
thumperlazyPower: what is best practise for dealing with charm tools?02:50
thumpershould we pip install?02:50
lazyPowerfill me in on the context02:50
lazyPowerah02:50
lazyPowerIf you need bleeding edge, thats the way to go02:51
lazyPoweri keep a branch around in a venv for bleeding edge, pypi release, and system defaults to debs02:51
lazyPowercontext switching is fairly painless then02:51
thumpermore just don't want it included in the charm tree02:51
lazyPoweri bzrignore .venv and keep all the project deps around in a virtualenv.02:52
thumperproblem becomes the main hook .py file uses it02:52
thumperso needs it to install  :)02:52
lazyPowerhmm, what are you pulling in from charm tools?02:52
* thumper shrugs02:52
thumpernormal stuff I guess02:52
thumpernot looked in detail02:53
lazyPowerare you talking about charm-helpers then?02:53
thumperuh... yeah02:53
thumperthat02:53
lazyPowerah ok :)  Common mistake02:53
lazyPoweryeah, I personally use the pypi delivery mechanism for charm-helpers02:53
thumperand install?02:53
lazyPoweron the other hand, our openstack team is very much steeped in embedding charm-helpers in the charm with the sync scripts02:54
lazyPowerthat way they can independently version/control the version of charm helpers shipping with the charms.02:54
thumperalso, what is the best practice for storing state in a charm?02:54
thumperdoes the charm helpers help there?02:54
lazyPoweri use the kv helpers in charmhelpers02:54
lazyPowerindeed02:54
lazyPowerhttps://pythonhosted.org/charmhelpers/api/charmhelpers.core.unitdata.html02:55
lazyPowerits kv storage for charms backed by sqlite (disclaimer) - i'm using it in the ETCD charm if you'd like to see a usage example in practice02:55
menn0waigani: i just replied to your review comments02:56
thumperlazyPower: yeah, should look02:56
lazyPowerthumper: https://github.com/whitmo/etcd-charm/blob/master/hooks/hooks.py#L127 - is a method body thats using it. its pretty straight forward02:56
lazyPowergetters/setters02:57
thumpercheers02:57
davecheneymwhudson_: https://go-review.googlesource.com/#/c/13570/202:58
davecheneyi commented out the wrong duffzero the first time around02:59
davecheneyPTAL02:59
mwhudson_ah02:59
lazyPowerdavecheney: sorry to sideline this topic - are yinz no longer using reviewboard?02:59
davecheneythis one does actually fix the bug in juju02:59
davecheneylazyPower: this isn't a juju patch02:59
davecheneyit's for go upstream02:59
lazyPowerooo02:59
davecheneywe're trying to land some last minute fixes for ppc6402:59
lazyPowerok, i've heard great things about gerrit so thought I'd ask :)02:59
davecheneyi think gerrit is ok03:00
davecheneybut out of the box is blows03:00
lazyPowerduly noted03:00
davecheneyto go one has a full time person tending to it's ministrations03:00
davecheneycustom skin03:00
davecheneycustom email notifcation03:00
davecheneya host of bots covering it's various failings03:00
lazyPowerneeds some juju loving is what you're telling me. get a stellar gerrit out of the box  preconfigured for joyous ruptures of usage goodness03:00
davecheneythat's sort of like saying "want a fantastic career, then get a super duper diploma from the university of new mexico. apply online today!"03:01
lazyPowerExactly, marketing speak to make it sound greater than it really is03:02
davecheneycaution: results may not represent real life. Please consult a health care professional before deciding if online education is right for your family03:03
thumper:)03:03
lazyPowerdavecheney: its really funny that you mention that ;) Thats exactly the sector of marketing my last jobs clients were from. So i've got a long history of working in that bubble you used as an example :D03:04
davecheneyas we said at the market maker03:04
davecheneypast performance is not a predictor of future profit03:04
lazyPowerdavecheney: "at the market maker" i dont follow03:11
davecheneyshare trading firms call themselves market makers03:15
lazyPoweroh nice. #TIL03:15
davecheneyfor the same reason people that like to break into other peoples shit call themselves security researchers03:15
waiganimenn0: thanks, just replied to yours :)03:25
menn0waigani: next one: http://reviews.vapour.ws/r/2350/ (much smaller)04:25
waiganimenn0: looking04:26
waiganimenn0: done04:36
menn0waigani: thank you04:37
mupBug #1483987 opened: [LXC caching] deletion of images does not work <juju-core:New> <https://launchpad.net/bugs/1483987>06:34
mupBug #1483987 changed: [LXC caching] deletion of images does not work <juju-core:New> <https://launchpad.net/bugs/1483987>06:37
mupBug #1483987 opened: [LXC caching] deletion of images does not work <juju-core:New> <https://launchpad.net/bugs/1483987>06:46
voidspacedimitern: hey, morning07:30
voidspacedimitern: I saw your review on my AllSpaces branch after I already had a "Ship It" from dooferlad07:31
TheMuevoidspace: good morning and happy birthday07:31
voidspacedimitern: so I've addressed your comments in a follow-up branch that I'll submit now07:31
voidspaceTheMue: bah, humbug :-)07:31
voidspaceTheMue: morning07:31
dimiternvoidspace, hey, yes I saw you landed it too late07:31
voidspacedimitern: there were some good suggestions in your comments though07:32
dimiternvoidspace, oh happy birthday indeed! :)07:32
voidspacedimitern: hah, bah07:32
voidspaceas if I want to be reminded that I'm getting old...07:32
dimiternvoidspace, hehe07:32
dimiternvoidspace, well, if you like them you can do a follow-up ;)07:33
voidspacedimitern: done07:33
voidspacedimitern: just needs me to create the pull request07:33
voidspacedimitern: just completing a final test run before I do that07:33
TheMuevoidspace: you're getting old? I'm just laughing. *lol*07:33
voidspaceTheMue: :-)07:34
dimiternvoidspace, cheers!07:34
dimiternI had some bad headache yesterday night07:34
voidspacetoo much vodka?07:35
dimiternso I might be taking it slower today07:35
voidspaceok07:35
voidspacedimitern: did you see our EuroPython video went live?07:35
dimiternno, 36 degrees during the day and 28 at night I guess07:35
voidspacedimitern: I posted a link on twitter and google+07:35
voidspacedimitern: :-(07:35
dimiternvoidspace, in g+ ?07:35
voidspacedimitern: yep07:35
dimiternvoidspace, I didn't realize it was the video as well - cool!07:35
voidspacedimitern: http://reviews.vapour.ws/r/2352/07:40
dimiternvoidspace, looking07:41
voidspacedimitern: there's a DeferredAnnotatef - which is why I removed the errors.Trace(err)07:43
voidspacedimitern: before you ask07:43
dimiternvoidspace, ok, as long as we're not ignoring an error07:44
dimiternvoidspace, LGTM07:44
voidspacedimitern: thanks07:45
voidspacedimitern: I don't assertSpace on them because there's already a test that does that07:45
voidspacedimitern: this isn't a test for AddSpace07:46
voidspacedimitern: it's a test for AllSpaces07:46
voidspacedimitern: if AddSpace is broken there's another test that will fail07:46
voidspacedimitern: once a unit of code is tested it's reasonable to assume that unit works for a test of a different unit07:47
voidspaceso long as you have *a test* that will fail if it breaks07:47
voidspacedimitern: so I'll pick up subnets CLI next07:47
voidspacedimitern: and work CLI -> api -> apiserver -> state again07:48
dimiternvoidspace, agreed, sounds good07:49
voidspacedimitern: hmm... weird. We have CLI of subnet list, apiserver of space create and state of subnet add07:50
voidspacedimitern: still left to do07:50
voidspacedimitern: still, I can do them in CLI -> apiserver -> state order, they're just all different pieces of functionality...07:50
dimiternvoidspace, for state "add" means both create and add in api/cli terms07:52
dimiternvoidspace, create just first creates the subnet07:52
dimitern(with the provider api)07:52
voidspacedimitern: add ought to check with the provider07:54
voidspacedimitern: right? as it's semantically "add a space that already exists with the provider"07:54
voidspacedimitern: or subnet07:54
dimiternvoidspace, yes, but not at state level, at apiserver level07:55
dimiternvoidspace, once we get the info from the provider, we still eventually call state add07:56
voidspacedimitern: yep07:58
voidspacedimitern: dooferlad: TheMue: I'll be a few minutes late to stdup, sorry08:56
dimiternnp08:57
TheMueok08:58
dooferladdimitern: it has been pointed out that my CI test has something trying to ping google, but we want to have the test pass on closed networks. Was thinking about pinging the default gateway instead, if it is defined.08:59
dooferladof course not having a default gateway when there should be one is a problem, but it isn't related to what Juju does.09:00
dimiterndooferlad, yeah, sounds good - perhaps instead of google try archive.ubuntu.com09:01
dimiternvoidspace, ;)09:10
voidspacedimitern: omw09:13
mattywaxw, ping?09:41
mattywmorning, afternoon all. Review request 2332 has been issued some kind of award by reviewboard. Can anyone work out the reference? http://reviews.vapour.ws/r/2332/09:48
perrito666Mattyw no idea but the code for rb is open10:03
axwmattyw: pong, what's up?10:58
mattywaxw, review #2332 got some kind of trophy for being 233210:59
mattywaxw, but I don't understand the reference, thought you might like to know10:59
axwmattyw: heh yeah, I looked at the code a while ago, it's for palindromic numbers10:59
axwmattyw: but why.. I don't know11:00
mattywaxw, hmm, I'm glad they took the time to do that11:01
axwmattyw: :)11:01
perrito666lool11:02
perrito666they also did it for review 1000 or 102411:02
mattywright11:05
mattywso if reviewNum in someListOfNumbersWeLikeForWhateverReason { printTrophy() }11:06
perrito666yup11:06
mattywI'd have probably fixed being able to display files that have moved before tackling that feature11:07
mattywbut that's just me11:07
perrito666mattyw: I am pretty sure that if number in list of numbers is a rather easy feature compared to the other thing11:10
perrito666also it is free software, you can always fix being able to display files that have moved11:11
TheMuedimitern: pushed the PR again11:44
dimiternTheMue, ok, will have a look shortly11:51
TheMuedimitern: thx11:51
dimiternTheMue, hey12:31
dimiternTheMue, take a look at this: http://play.golang.org/p/QHyS4l9JvB12:32
TheMuedimitern: yep12:32
dimiternTheMue, it shows clearly that returning nil if result.Error == nil is better than returning it (even with Trace) if result.Error != nil12:33
TheMuedimitern: yep12:33
dimiternTheMue, that way when a nil error is returned, it will always be an untyped nil and the ErrorIsNil will work12:34
dimiternTheMue, as I was about to add a comment about a few places with IsNil wanted to see what was the way to fix it12:34
TheMuedimitern: makes sense, yes. will change the two API functions as well as their tests12:36
TheMuedimitern: ugly, those nil but not nil errors12:37
mupBug #1484105 opened: juju upgrade-charm returns ERROR state changing too quickly; try again soon <juju-core:New> <https://launchpad.net/bugs/1484105>12:47
voidspacedimitern: ping12:55
TheMuedimitern: feels good, and tests with ErrorNotNil now pass as wanted12:59
dimiternvoidspace, pong13:09
dimiternTheMue, indeed; almost ready with your review13:10
voidspacedimitern: quick check - the card I'm working on says to implement "AddSubnets" to the API (client side API call)13:12
voidspacedimitern: the apiserver call is bulk, AddSubnets13:12
voidspacedimitern: but the API call should be AddSubnet (singular), right?13:12
voidspacedimitern: I'm pretty sure I answered this anyway by looking at cmd/juju/subnets/subnets.go13:12
voidspaceand it calls AddSubnet13:12
voidspacedimitern: *plus*, I should do Create *and* Add - even though the card only says AddSubnet and AllSubnets13:13
voidspacedimitern: cmd/juju/subnets/create.go exists alredy13:14
voidspace*already13:14
dimiternvoidspace, AddSubnet should be the api and state method I think13:26
dimiternvoidspace, and the api should have a CreateSubnet as well13:27
dimitern(also calling state.AddSubnet eventually at the apiserver side, after the subnet is created)13:27
voidspacedimitern: yep, that matches my expectation13:28
voidspacedimitern: thanks13:28
voidspacedimitern: this card is just the api side stuff, so easy enough13:28
voidspaceno messing around with providers here13:28
dimiternvoidspace, so we'll need a method on environs.Networking I guess - CreateSubnet (eventually, for now it can be a method on an interface like in apiserver/common)13:29
voidspacedimitern: yep13:29
voidspacedimitern: and a "FindSubnet" or similar to verify an existing one13:29
perrito666wwitzel3: hi?13:30
katcoperrito666: he is not in atm13:30
perrito666oh that is unfair, he has an answering person (which I somehow suspect is a emacs plugin)13:31
perrito666voidspace: hb13:31
katcoperrito666: (ERROR unknown defun 'oh that is unfair, he has an answering person (which I somehow suspect is a emacs plugin))13:32
perrito666lol13:33
voidspaceperrito666: hb13:34
voidspaceperrito666: :-)13:34
mupBug #1483421 changed: Can not install juju-local on precise Ubuntu <precise> <juju-core:New> <https://launchpad.net/bugs/1483421>13:38
katcoperrito666: wtf are you trying to hack my emacs13:57
perrito666lol13:57
natefinchkatco: gonna be ~5 min late to meeting13:58
dimiternTheMue, if the release fails, do you try to remove the address?13:59
katconatefinch: ok thx for the heads-up13:59
dimiternTheMue, ah, sorry, that was after release was unbroken13:59
voidspacedimitern: CreateSubnet doesn't exist on the API server and there's no card for it14:03
voidspacedimitern: it was probably "implicit" in another card, but not done14:03
voidspacedimitern: I'll add a card14:03
voidspacedimitern: it takes slightly different parameters to AddSubnet14:03
voidspacedimitern: (takes an additional public bool parameter)14:04
voidspacedimitern: and the current apiserver AddSubnets does nothing with the provider - merely validates and adds to state14:07
voidspaceI think that's wrong (or at least "a bug" that we can fix later)14:07
voidspaceunless I'm mistaken14:08
lazyPowernatefinch: wwitzel3 - is there anything special i need to pass to --upload-tools to build the juju-process-docker bin or have i run into the end of the sidewalk on the branch?14:08
natefinchlazyPower: sidewalk error14:09
TheMuedimitern: yep, addresses w/o releasing aren't removed, they will be retried later. that what I've tested by break and unbreak it14:09
natefinchlazyPower: currently it needs to be bundled in your charm14:09
lazyPoweroh?14:10
natefinchlazyPower: check out https://github.com/natefinch/whalesay  and https://github.com/natefinch/whalesay/blob/master/hooks/install14:16
lazyPowernatefinch: ok, i can work around that. Any guess as to how long until thats shipping w/ the tools? (i'm assuming feature branch landing in master?)14:17
dimiternTheMue, reviewed14:28
dimiternTheMue, I'm fine if you fix just those that look more serious and the rest in a follow-up PR, if you like14:29
TheMuedimitern: some are already done and pushed14:30
natefinchlazyPower: it'll land after 1.25... it's going to be integrated into the normal tools, so there won't be a separate binary deployed14:35
lazyPowerok, thats what i suspected. Thanks natefinch14:35
TheMuedimitern: using ipAddress instead of ipAddress.Value() returns the string representation of network.Address() instead of the vallue (which is e.g. "public:0.1.2.3")14:38
TheMuedimitern: for log output that imho is ok14:39
dimiternTheMue, I see, ok then if you can, use a local var if the same ipAddress.Value() is used in more logs14:48
TheMuedimitern: ok14:49
voidspaceg'night all15:27
mupBug #1484177 opened: Upgrade charm local juju failed <juju-core:New> <https://launchpad.net/bugs/1484177>15:47
natefinchericsnow: you around?17:46
ericsnownatefinch: yep17:47
natefinchericsnow: it occurs to me... you're caching all these updates in the context...  I was just going to cache the untrack as a delete.... but what if someone does untrack and then track with the same id? Should the later track removed the cache untrack?  I presume so....17:48
ericsnownatefinch: that should work given that tracking events are based strictly on the ID17:51
natefinchericsnow: yeah, just makes this all a lot more complicated.  It's unfortunate we have to do our own caching layer before flushing out to the real data storage17:51
ericsnownatefinch: I guess the plugin type must factor in too17:51
natefinchericsnow: hmm.... yeah.  Damn, that's annoying.17:53
ericsnownatefinch: it's definitely an unexpected corner case, but the first tracked proc may have the same ID as the replacement, but a different type17:53
ericsnownatefinch: that little facet certainly complicates the matter a little17:55
natefinchericsnow: yeah.... I wonder if that's actually a problem with all our code... we currently only use the id for identifying the process17:55
ericsnownatefinch: it's only in the hook context that it's a problem an only in the untrack...track case (without a flush in between)17:57
ericsnows/an/and17:57
ericsnownatefinch: basically it's an artifact of caching operations between flushes17:58
natefinchericsnow: api get just takes ids.  If more than one process has the same id (but different type), you'd get back more than one process17:58
ericsnownatefinch: presently it isn't an issue because basically we flush after every operation (instead of waiting until the conclusion of the hook context)17:59
ericsnownatefinch: ID is the key (per unit) so there is only one18:00
natefinchericsnow: gotta run, but I'll talk to you when I get back.18:01
ericsnownatefinch: only one hook can run at a time for a unit so we won't collide there...but at the point that we have workers touching state we'll have to introduce some sort of refresh in the hook context component18:02
ericsnowk18:02
thumpermramm: ping20:59
mrammpong20:59
thumpermramm: can we have a chat in about 30 minutes?20:59
mrammprobably20:59
thumpermaster of committment there21:00
mrammthumper: we can meet in 30-40 min for sure21:01
mrammjust not sure how long this danwest meeting is going to go21:01
thumperkk21:02
menn0thumper: regarding that mongod not starting issue... one of the reporters of the bug just attached the syslog output and the problem is the shared-secret file isn't being written out21:26
menn0https://launchpadlibrarian.net/214260999/syslog.txt21:26
menn0thumper: should be fixable now at least21:26
* thumper nods21:26
thumperis it a race?21:26
menn0thumper: i've only just seen this so haven't checked but that seems likely21:27
menn0thumper: given that it doesn't happen for most people21:27
* thumper nods21:27
=== benonsoftware is now known as MerryChristmas
lazyPowerheyo o/ can i tap someone for info about https://bugs.launchpad.net/juju-core/+bug/145626521:38
mupBug #1456265: Openstack provider should work without object-store <openstack-provider> <juju-core:Fix Committed by axwalk> <https://launchpad.net/bugs/1456265>21:38
lazyPowersuch as if its currently in the juju-devel ppa for test driving?21:38
=== lazyPower is now known as lp|conference-mo
=== lp|conference-mo is now known as lp|conference
mupBug #1484303 opened: keyManagerSuite teardown fails  <ci> <intermittent-failure> <test-failure> <juju-core:New> <https://launchpad.net/bugs/1484303>23:54
davechen1ymwhudson: https://groups.google.com/forum/#!topic/golang-dev/vNboccLL95c23:56

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