/srv/irclogs.ubuntu.com/2014/10/17/#juju-dev.txt

rick_h_and maas zones are part of that work/discussion00:00
bigjoolswallyworld: https://bugs.launchpad.net/juju-core/+bug/138227600:34
mupBug #1382276: Says environment is bootstrapped when it's not <juju-core:New> <https://launchpad.net/bugs/1382276>00:34
wallyworldkatco: hi, can you pop onto the standup a minute early?01:12
katcowallyworld: good timing :)01:13
katcowallyworld: (i'm there already)01:14
mwhudsonwhat is GOARCH on ppc64le?01:24
=== uru_ is now known as urulama
wallyworld_bigjools: https://bugs.launchpad.net/juju-core/+bug/138232905:29
mupBug #1382329: juju 1.21-alpha1, unable to bootstrap to maas with --constraints arch=armhf / arm64  <hs-arm64> <juju-core:New> <https://launchpad.net/bugs/1382329>05:29
=== uru_ is now known as urulama
mattywmorning all08:04
voidspacemorning all08:07
dimiternmorning08:30
voidspacedimitern: I won't be around for standup *again* today I'm afraid08:38
voidspacedimitern: dentist appointment08:38
voidspacedimitern: I shouldn't be out too long08:38
dimiternvoidspace, no worries08:38
voidspacedimitern: I organised it especially to avoid clashing with moonstone standups08:38
voidspacedimitern: and then I changed team :-)08:38
voidspacedimitern: I have a branch which I think is ready for review - it's trivial though (as discussed yesterday)08:39
dimiternvoidspace, :) well, I'll be standing up by myself then hehe08:39
voidspacedimitern: ah yes08:39
voidspacedimitern: no jam on Fridays and Frank is gardening08:39
voidspace:-)08:39
voidspacedimitern: enjoy08:39
voidspacedimitern: don't talk for too long08:39
menn0morning voidspace08:47
voidspacemenn0: morning08:47
voidspacemenn0: or time-appropriate-greeting anyway...08:47
menn0voidspace: well I'm in your timezone so morning is just fine08:48
menn0voidspace: this is my last day working from the London office08:48
voidspacemenn0: you still in London?08:48
voidspacemenn0: ah08:48
voidspacemenn0: how's it been?08:48
voidspacemenn0: if you find Evan Dandrea, say hi to him for me08:48
menn0voidspace: good!08:48
voidspacemenn0: I guess a bunch of them are still in Brussels08:48
menn0Jesse has been here too so we've been working together but I'm on my own today08:48
voidspaceah, cool08:48
menn0I'm seated amongst the phone team. it's been interesting seeing what they're up to.08:49
voidspacehave you been able to play with any hardware?08:50
voidspaceTell them to test the "edge swipe" when the phone has a case on it (the type of case that has a lip round the screen)08:50
voidspacewell, maybe suggest it if you have the chance...08:50
voidspaceand they've probably thought of that anyway08:51
menn0voidspace: yeah the head of the phone team gave me a demo of the phone yesterday08:51
menn0voidspace: it's quite nice. amazing what they've managed to do in such a short time.08:52
voidspacegreat08:52
voidspacedon't let them poach you! ;-)08:52
fwereadetasdomas, ping10:25
tasdomasfwereade, pong10:26
fwereadetasdomas, just came across the collectMetricsSignal thing, couple of thoughts10:26
fwereadetasdomas, (1) shouldn't we continue to collect metrics while dying?10:26
fwereadetasdomas, (2) shouldn't we set it up once, and trust it to keep firing, rather than recreating it every time through the loop10:27
fwereadetasdomas, hmm, re (2), I guess we actually want to reset the timer once we trigger it, so we do need to create it repeatedly, so don't worry about that one10:28
tasdomasfwereade, recreation happens because we need the signal to fire as soon after the unit has started, and time.Ticker did not let me do that10:28
tasdomasfwereade, I don't think we need to collect metrics while the unit is dying10:29
tasdomasfwereade, I will discuss this with cmars, but I'm pretty sure that's the way we want it (at least for now)10:29
fwereadetasdomas, ok, please do bring it up, a unit could potentially be dying but still delivering value for a long time10:30
fwereadetasdomas, shame not to have the numbers available10:31
tasdomasfwereade, numbers?10:31
fwereadetasdomas, the metrics we collect10:31
fwereadetasdomas, it's just weird to have a potentially-long gap at the end of its lifetime10:31
fwereadetasdomas, not the end of the world ofc10:32
tasdomasfwereade, well, it seems to me that a dying unit is a very unreliable thing to meter10:32
fwereadetasdomas, yeah, maybe it's only useful if we also record when the unit started dying10:34
menn0fwereade: ping12:46
fwereademenn0, pong12:47
menn0fwereade: I'm hitting road-block after road-block trying to get the machine env uuid upgrades to work12:48
menn0there are many things in the upgrade infrastructure itself that care about machines and instanceData12:49
fwereademenn0, crap -- more things happening in the process of getting a state connection than we anticipated?12:49
fwereadeahh, ok12:49
menn0the hack for getting the state connection is ok and worked12:49
menn0but then getting the upgrades to work is another story12:50
menn0the upgrades running functionality wants both a *state.State and an *api.State12:50
menn0I've implemented various hacks to get the API working well enough12:50
menn0but am now hitting problems with the upgrade sync stuff itself12:51
fwereadehmm, I was wondering if we could make sure we ran the state-requiring upgrades first12:51
menn0that's what I'm thinking12:51
menn0treat these machine and related collection upgrades as a special case12:51
fwereademinimising the window of yuckiness seems sane12:51
fwereadeand we can/do control the order of upgrades anyway, right?12:52
menn0we do12:52
menn0but currently we don't get to running any of them12:52
menn0and I understand why12:52
menn0but fixing it is getting super hacky12:52
menn0I'm thinking that about implementing something near the top of jujud's Run that gets a *state.State and runs selected upgrade steps manually12:53
menn0if it's the master machine agent12:53
menn0those steps would be removed from the list of steps for 1.2112:54
menn0fwereade: does that sound reasonable to you?12:57
fwereadein essence, yes, I think so12:59
fwereademenn0, can we make the subsequent upgrade steps *not* take a *state.State then?12:59
fwereademenn0, I'd be happiest if we could completely separate state changes from all the others, and always run the state ones first13:00
menn0fwereade: ok. upgrade steps for state servers only get *state.State now if running on a state server (obviously)13:01
menn0fwereade: what about upgrade steps that aren't DB migrations but might need to use state?13:01
fwereademenn0, I'm hoping we don't have any, because philosophically speaking we shouldn't13:02
fwereademenn0, I am prepared to be surprised/saddened though13:02
menn0fwereade: I'm looking at what we have now13:02
menn0fwereade: upgrade steps have been given a *State if running on a state server since before I started worked on this stuff13:02
menn0fwereade: well updateRsyslogPort is pretty special. it opens up its own private *State13:04
* fwereade twitches gently13:04
fwereadewhat's it doing that can't/shouldn't be done over the api?13:04
menn0fwereade: and then there's processDeprecatedEnvSettings which uses the provided *State13:04
fwereadeditto13:04
menn0fwereade: it doesn't look like it. it needs to change something which is normally read-only13:05
fwereadeequally I'd be fine calling both those things data model changes13:06
fwereadeany reason not to run those in the first, needs-state batch?13:06
fwereadeand all the others in a second, needs-api batch?13:06
menn0fwereade: I think that sounds reasonable13:08
menn0fwereade: I'll have to think about how this effects the current upgrade sync functionality and the upgrade mechanics generally13:08
fwereademenn0, cool, thanks13:10
fwereademenn0, let me know what the next showstopper is ;p13:11
menn0fwereade: will do :)13:11
menn0fwereade: sigh. this might require some reorganisation of the upgrade-steps worker13:12
perrito666man headbanging in closed spaces is dangerous13:12
* perrito666 rubs forehead13:12
perrito666morning all13:13
jcw4morning perrito66613:17
abentleysinzui: Have you had a chance to look at https://code.launchpad.net/~abentley/juju-ci-tools/industrial-test/+merge/238621 or my review of https://code.launchpad.net/~sinzui/juju-release-tools/validate-streams/+merge/237975 yet?13:17
sinzuiabentley, yes, sorry about the delays. You will see an email soon about the 1.20.10 problem13:18
abentleysinzui: Ah, gotcha.13:18
menn0fwereade: sigh. without machine and instanceData having been migrated, EnsureUpgradeInfo doesn't work. it's really feeling like these specific migrations are a special case that may need to be handled as such.13:29
menn0fwereade: I'm going to try that out and seeing how it looks.13:30
fwereademenn0, ick13:31
fwereademenn0, yeah, go for it13:31
menn0once I have it done I'll push it to my repo so you can have a look. I don't think it'll take long.13:31
natefinchperrito666: 1:!?13:36
perrito666going13:36
menn0fwereade: I was thinking something like this: https://github.com/mjs/juju/commit/b30135af56baa344efda84e54c4cc9c90b367d3214:47
menn0fwereade: with this the upgrade from 1.20 works14:47
fwereademenn0, it's a relief that that works14:48
menn0fwereade: I think this isn't quite right in terms of handling master changes during upgrades14:48
menn0fwereade: but I can fix that14:48
fwereademenn0, can you estimate the cost of splitting upgrade steps up so we can separate state-needing ones from api-needing ones, and run them in that order using upgrade machinery?14:48
fwereademenn0, if I wave my hands vigorously, it feels like it shouldn't be *fundamentally* hard, but I can believe it'd be a hassle14:49
fwereademenn0, ie the upgrade machinery itself would need some work14:50
menn0fwereade: sure. I've already thought somewhat about this today.14:50
menn0fwereade: by "run them in that order using upgrade machinery" do you mean inside the upgrade-steps worker? (or at least managed by the UpgradeInfo system)14:51
fwereademenn0, let's say the latter for now, given that I assume the former wants an api connection as well14:51
menn0fwereade: actually... quick hangout? I want to make sure we're on the same page.14:52
fwereademenn0, sure14:53
menn0fwereade: https://plus.google.com/hangouts/_/gxxkhbn6ou7drvwcgmo3hd7wjea14:53
menn0fwereade: missed you14:53
bodie_fwereade, quick question re. actions -- we want to land the whole CLI at once, at the very end, right?15:15
fwereadebodie_, I think so, yeah -- but if you can come up with a smaller and self-consistent subset that's also fine15:16
bodie_hmm, ok15:16
bodie_fwereade, jcw4 and I have been thinking we should open CLI PRs against our juju-actions repo individually, and get them vetted, so we don't have a huge PR to pass all at once15:17
fwereadebodie_, +100 to that15:17
bodie_okay, cool15:17
bodie_we can figure out what the subset is from there, maybe15:17
bodie_thanks fwereade!15:18
=== jcw4 is now known as jcw4|away
mattywfwereade, are you done for the day? or do you have 5 minutes for an "in theory" discussion?16:57
=== urulama_ is now known as urulama
voidspacehappy weekend everyone17:33
=== jcw4|away is now known as jcw4
hazmatanyone know what happens when two sides disagree on scope:container?18:52
natefincha wormhole in space?19:03
natefinchno I don't know19:04
perrito666hazmat: interesting question to ask on a friday afternoon after a sprint19:04
* perrito666 was 10 mins trying to figure out why his select was not working... he wrote switch instead19:13
natefinchhaha, I've done thart19:16
perrito666sounds like something that could be a compiler error "too many type mismatches on your switch, you most likely are an airhead trying to use select"19:21
natefinchheh perhaps19:21
perrito666is there any doc for mup? there is no README on the repo.. or any other piece of non code information for the matter19:41
natefinchmup: help19:58
mupnatefinch: Run "help <cmdname>" for details on: bug, echo, help, infer, poke, run, sendraw, sms19:58
* perrito666 sighs and git clones20:02
natefinchwho the heck ever thought yaml was a GOOD idea :/.20:41
perrito666what did that bad format do to you now?20:43
perrito666your best bet is to actually write an editor for it20:45
natefinchI'm trying to set min version in the charm metadata.yaml .... so like minversion: 1.20    .. but of course then yaml thinks that's a float, not a string, so I have to put it in quotes like minversion: "1.20"  except then my code is saying \"1.20\" is not a valid version.... which seems to indicate it's getting the quotes as part of the string for some reason20:51
perrito666mmm, I believe I saw gustavo and someone else discuss that particular issue not long ago20:52
natefinchI think the actual reason is that our version parsing stuff always wants the micro version... so you have to say 1.20.020:55
natefinchwhich is annoying20:55
perrito666mmmm, true20:56
perrito666which is not so bad itself cause that way you ommit alpha/beta version20:56
natefinchanyway, gotta run20:57
natefinchhave a nice weekend everyone20:57
perrito666u220:58

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