/srv/irclogs.ubuntu.com/2016/01/21/#juju-dev.txt

mupBug #1536425 opened: Juju metadata cannot make streams with 1.x and 2.x agents <metadata> <regression> <streams> <juju-core:Triaged> <https://launchpad.net/bugs/1536425>01:29
mupBug #1536426 opened: Juju metadata cannot make streams with 1.x and 2.x agents <metadata> <regression> <streams> <juju-core:Triaged> <https://launchpad.net/bugs/1536426>01:29
thumperdavecheney: what is the simplest way to create a copy of []string?01:40
thumperis it:  target := source[:]01:40
thumper?01:40
thumperor do you go:01:40
thumpertarget := make([]string, len(source))01:40
thumpercopy(target, source)01:40
thumperseems that the first is good enough01:42
=== rharper` is now known as rharper
davecheneythumper: do you want to copy the string header value, or the contents of the string02:11
davecheneythe former is easy, just assign02:11
davecheneythe latter requires a copy if you want the backing array of the source and copy to be different02:11
thumperI want a change in source to not change target02:11
davecheneythen you need to copy the contents of the slice02:21
thumperdavecheney: the [:] makes a copy right?02:43
thumperdavecheney: on another take... guess what?02:43
thumperfslock is fubared02:43
thumpermenn0 is annotating a bug02:43
natefinch-afkthumper: [x:y] is the slicing operator, which never copies the backing array02:44
=== natefinch-afk is now known as natefinch
thumpernatefinch: http://play.golang.org/p/TJlPFkr9wD02:44
thumpernatefinch: hmm...02:44
* thumper pokes02:44
thumperok, figured it out02:45
natefinchappend makes you a new backing array there02:45
thumperyeah, figured that bit out02:47
thumperta02:47
davecheney[:] copies the struct value, which still points to the same backing array02:48
davecheneyvar s []string02:48
davecheneyx := s[:]02:48
davecheneyisthe same as02:48
davecheneyx := x02:48
thumperoh wallyworld02:48
davecheneyx := s02:48
wallyworldyo02:49
thumperwallyworld: I have a master blocker to give you02:49
wallyworldoh joy02:49
thumperbecause I'm busy with model migrations :)02:49
wallyworldsigh, i'm busy too :-(02:49
menn0thumper, wallyworld: https://bugs.launchpad.net/juju-core/+bug/153637802:49
mupBug #1536378: resolver loop error in maas-1_8-OS-deployer test <juju-core:Incomplete> <juju-core machine-dep-engine:Triaged> <https://launchpad.net/bugs/1536378>02:50
menn0updating the bug with new info now02:50
thumperwallyworld: I know, everyone is busy02:50
thumperbut I've been given the "go away" sign for my door02:50
thumperdavecheney: surprise surprise the alive stuff in fslock doesn't work02:51
wallyworldremind me to "thank" alexis02:51
thumperwallyworld: she did give you the choice remember02:51
wallyworldchoice of wot?02:51
thumperme or axw_02:51
axw_?02:52
wallyworldto do the model migrations work i think he means02:52
thumperaxw_: it was who was going to work on model migrations02:52
axw_ah, I had no idea :)02:52
wallyworldwe were going to do CMR02:53
thumperyeah, wallyworld sheltered you02:53
* axw_ retreats back into cave02:53
wallyworldthat was before CMR go pulled02:53
thumperlike a good manager02:53
=== axw_ is now known as axw
* rick_h_ hands out umbrellas to everyone02:53
davecheneythumper: i think I just won some kind of bet02:53
davecheneythumper: will you let me rip it out now ?02:53
thumperI was happy to have it ripped out before02:54
thumperwho wanted it kept?02:54
thumperI forget02:54
davecheneythumper: you did02:54
axwthere was some concern about shared filesystems I think?02:54
davecheneywell, we put it to juju-dev and htere was the usual round of non committal 'well, maybe we need it'02:54
axwwe don't even need to worry about that when we do XDG properly02:55
davecheneycombined with the usual bike shedding on how one _could_ implement that feature02:55
axwdavecheney: I seem to recall a twitter poll... ;)02:56
davecheneyindeed02:56
thumperugh02:56
thumperfark02:56
thumperI'd like to see it replaced with something else that works on windows / linux / maxos02:57
thumperthat unlocks if the process dies02:57
thumperI don't care about the underlying implementation02:57
davecheneyI can do that 100% reliably on linux02:57
natefinchI can do that 100% reliably on windows02:57
thumpercreate some interface that we can hide behind02:57
davecheneyosx would have to be a tcp socket listneing on localhost02:58
thumperthat has both lock, and lockWithTimeout02:58
davecheneylock is just lockWithTimeout(MAXINT)02:58
wallyworldnp02:59
thumperdavecheney: JFDI03:00
mupBug # opened: 1536445, 1536446, 1536447, 153644803:05
davecheneykk03:06
davecheneythumper: https://bugs.launchpad.net/juju-core/+bug/1465317/comments/1203:08
mupBug #1465317: Wily osx win: panic: osVersion reported an error: Could not determine series <osx> <packaging> <wily> <windows> <juju-core:Triaged> <juju-core 1.24:Won't Fix> <juju-core 1.25:Triaged by dave-cheney> <juju-release-tools:Fix Released by sinzui> <https://launchpad.net/bugs/1465317>03:08
natefinchdavecheney: I was looking into that code in Oakland, since I was factoring out the version stuff to live outside of juju/juju for use by the charm repo (for MinJujuVersion).  IIRC, the places where we actually care that a series is "known" or not are very limited... and usually it would be fine to fail later (e.g. when we can't find a matching tools stream).03:10
davecheneynatefinch: yeah, i think so too03:11
davecheneyi think it's reasonably safe to add an "unknown" series03:11
natefinchI agree03:11
natefinchas long as it's really unknown... if it's Zany Zebra and it's just not in our list, if it still comes across as "zany", then I think that's ok.  if zany gets turned into unknown, then we're basically back where we started.03:12
thumperI'd rather we keep it zany03:14
thumperand just not find tools etc03:14
natefinchexactly03:15
natefinch...until tools appear, and then it just magically works03:15
natefinchand we stop getting these bugs every time a new ubuntu or windows or osx version comes out03:17
davecheneythumper: we can do that for linux03:18
davecheneybut for windows and OSX there is no tool to map their internel release name to a name03:18
davecheneywhat is the series of OSX 10.20.0 ?03:19
davecheneymaybe we just say "10.20.0"03:19
davecheneyit won't match any tools03:19
davecheneybut you cannot bootstrap to OSX, so that's not a big deal03:19
menn0wallyworld, thumper, davecheney: bug 1536378 updated03:19
mupBug #1536378: fslock staleness checks are broken <blocker> <juju-core:Triaged> <https://launchpad.net/bugs/1536378>03:19
menn0now creating another bug with all the other stuff that's broken in fslock03:20
wallyworldmenn0: so is that a second blocker?03:21
menn0wallyworld: the others are less likely to be hit, probably not worth blocking for03:22
wallyworldmenn0: oh, reading the comment in the maas blocker implicates fslock?03:22
natefinchdavecheney: we actually get a string name for windows... I guess we just thought it was too long, so we made a map to shorter names... nothing says we couldn't change that and just use the real name for the tools.. it's not like they're something a user should ever see.03:23
menn0wallyworld: yep I believe the fslock bug is the reason for the MAAS CI test failure03:23
menn0wallyworld: I'm amazed that not more is broken03:23
wallyworldso thumper introduces a bug and flocks it off to me \0/ i owe him a beer03:24
wallyworldactually i take it back, someone else introduced the bug, not thumper. damn, can't blame him now03:33
davecheneyoh dear03:51
davecheneyjuju still has two different types of file lock03:51
davecheneyjuju/utils/fslock, and juju/juju/utils/filelock03:51
davecheneyfsutils.Lock calls lock.clean before starting to lock the lock03:53
davecheneyfsutils.LockWithTimeout does not call lock.clean03:53
davecheneyone of those is wrong03:53
davecheneyi cannot tell which03:53
natefinchand this is why man invented the coin toss03:56
natefinch....also unit tests03:56
davecheney        logger.Warningf("breaking configstore lock, lock dir: %s", filepath.Join(dir, lockName))04:00
davecheney        logger.Warningf("  lock holder message: %s", lock.Message())04:00
davecheneymulti line logging ? srsly04:00
natefinchrofl04:00
wallyworldmenn0_: with logging to mongo, do we still need logsink.log?04:01
wallyworlddavecheney: are you fixing the blocker? i was going to start looking but don't want to double up04:02
davecheneyyup, i'm looking at the lock type04:03
* davecheney scrubs for surgeery04:03
wallyworldawesome, ty04:03
thumperwallyworld: yes04:05
thumperwallyworld: logsink.log is the file that we use if mongo goes awol04:06
wallyworldthumper: makes sense, ty. i have a branch with rsyslog all removed04:06
menn0_wallyworld: logsink.log was created as part of the logging to mongo04:06
thumper\o/04:06
* thumper is done for the day04:06
wallyworldlater04:06
menn0_davecheney: i'm not sure what you're thinking but I wonder if now is the time to change fslock to use OS primitives for locking (as already discussed on juju-dev) instead of the current mess04:08
menn0_davecheney: all the current complexity and bugs are because it's doing it wrong04:08
menn0_davecheney, wallyworld: bug 1536378 describes the other fslock issues discovered today04:09
mupBug #1536378: fslock staleness checks are broken <blocker> <juju-core:Triaged> <https://launchpad.net/bugs/1536378>04:09
menn0_davecheney, wallyworld: sorry bug 153646104:09
mupBug #1536461: fslock bugs <juju-core:New> <https://launchpad.net/bugs/1536461>04:09
wallyworldawesome, more bugs \o/04:09
wallyworldmenn0_: i see a bunch of work was done to fslock since it was originally written - obviously not well reviewed04:10
mupBug #1536461 opened: fslock bugs <juju-core:New> <https://launchpad.net/bugs/1536461>04:12
=== menn0_ is now known as menn0
=== menn0 is now known as menn0_
davecheneymenn0_: wallyworld thumper, minimal fix https://github.com/juju/utils/pull/19004:25
wallyworldawesome04:25
menn0_davecheney: I think the retry loop might have been a way to paper over the race created by the RemoveAll in NewLock (see bug 1536461)04:26
mupBug #1536461: fslock bugs <juju-core:Triaged> <https://launchpad.net/bugs/1536461>04:26
menn0_davecheney: as long as that race is there, the loop might be necessary04:27
davecheneymenn0_: there are lots and lots of problems in that type04:27
menn0_davecheney: agreed04:27
davecheneyfor example, Lock calls clean which does the isAlive/BreakLock dance04:27
davecheneyLockWithTimeout does not call clean04:27
davecheneywhich looks like an oversight04:28
davecheneythe "if your pid matche the pid of the lock" is also a bug04:28
menn0_davecheney: yes, that's one of the problems I mention in bug 1536461 (you should look there)04:28
mupBug #1536461: fslock bugs <juju-core:Triaged> <https://launchpad.net/bugs/1536461>04:28
wallyworlddavecheney: i made a comment, not sure if you agree04:29
menn0_davecheney: I'm not sure that the "if PID == lock.PID" is necessarily wrong04:29
menn0_davecheney: this function is about deciding if the PID which owns the lock is alive04:29
davecheneyif two workers inside the same process are relying on this lcok to stop them walking over each other04:29
davecheneyit is04:30
davecheneywe probably don't have that code path today04:30
davecheneybut it's just a matter of time04:30
menn0_davecheney: not about whether the the lock is held04:30
davecheneythe logic of "make lock, then lock it" is insane04:30
davecheneyyou sholdn't be able to create a lock unless you hold it04:30
menn0_davecheney: isAlive is about whether a process is alive and keeping the current lock "held"04:30
menn0_davecheney: yep I agree with that04:31
davecheneymenn0_: I added a long rebuttle why I think retring is pretty pointless04:51
=== menn0_ is now known as menn0-afk
davecheneywallyworld: http://reviews.vapour.ws/r/3585/05:06
davecheneyany more comments05:06
wallyworldlooking05:06
davecheneyta05:06
wallyworlddavecheney: reviewed, but if we close the current blocker there should be a bug opened for the proper fix05:12
davecheneywallyworld: menn0 has created a placholder bug listing all the probles05:17
davecheneywallyworld: 153646105:17
wallyworldok, ty05:17
wallyworldi was just concerned this specific bug would be closed for the quick fix and not followed up05:17
wallyworldas part of a longer term fix05:17
davecheneywallyworld: yup, a long term fix is to stop using pid files on disk05:19
davecheneywhich is my plan05:19
wallyworldindeed05:19
davecheneywallyworld: can you please re review05:46
davecheneyi got scared and rolled back most of my change05:46
wallyworldok05:46
davecheneynow the patch just loops like the logic originally did05:46
davecheneybut actually loops05:46
davecheneyi think this is the safer change05:46
wallyworldyep, +105:48
wallyworldthat was my main issue with the first changes05:48
axwwallyworld: https://github.com/juju/juju/pull/4162  -- refactored credentials types, added list-credentials05:56
wallyworldyay05:56
wallyworldaxw: will look in about 1505:56
axwwallyworld: next will be extending providers to return schemas, need to tidy that up. probably will be a big one05:56
axwwallyworld: thanks, no great rush05:56
davecheneywallyworld: CI bot is fucked up, it cannot tell time anymore05:56
davecheneyhttp://paste.ubuntu.com/14588528/05:56
wallyworldsigh05:57
davecheneytried twice in a row05:57
wallyworldwe'll have to try again i guess and let curtis know05:58
mupBug #1536477 opened: utils/debugstatus: test failure <juju-core:New> <https://launchpad.net/bugs/1536477>06:09
axwwallyworld: so we're definitely removing the old azure from 2.0?06:13
wallyworldaxw: yep06:13
axwwallyworld: if so, I'm going to do that now, because it'll make my job easier in the cloud credentials branch06:13
axwk06:13
wallyworldaxw: we're supporting 1.25 for 2 years06:14
axwwallyworld: *nods*06:14
axwwallyworld: hmm, CI probably isn't ready for it though06:15
mupBug #1536477 changed: utils/debugstatus: test failure <juju-core:New> <https://launchpad.net/bugs/1536477>06:15
axwI'll just put it up for review anyway, then land when CI is ready06:15
mupBug #1536477 opened: utils/debugstatus: test failure <juju-core:New> <https://launchpad.net/bugs/1536477>06:18
wallyworldaxw: yes, i am having conversations about CI for the api rename branch. i've added that to the list of topics.06:28
axwwallyworld: ta06:28
davecheneywallyworld: https://github.com/juju/juju/pull/416306:35
davecheneyfix to juju/juju06:35
wallyworldok06:35
anastasiamacthe whole of juju/juju?06:35
wallyworldif only06:36
wallyworldlgtm06:36
mupBug #1536480 opened: Disallow deploying multiple units to the same container by default <juju-core:New> <https://launchpad.net/bugs/1536480>06:39
wallyworldaxw: reviewed, have to head to soccer in about 45 minutes, will look again when i get back if not before07:07
axwwallyworld: ok ta07:07
axwwallyworld: addressed some but not all comments, PTAL when you can07:37
wallyworldsure07:37
wallyworldaxw: responded07:43
axwwallyworld: PTAL07:53
wallyworldok07:54
wallyworldaxw: done, ty. now off to soccer08:01
axwwallyworld: later, enjoy08:01
Muntanerhello to everyone...I have a problem with a bootstrap, is this the right channel?09:14
MuntanerI'm trying to bootstrap juju with two maas machines, that actually are two VM into VMWare...  I installed the Maas controller on another machine, and the bootstrap seems to go well, it installs the OS cloud into the first of the two machines but when it comes to MongoDB replica stuff, it fails. I have under my hands the logs that I see in this situation09:28
TheMueMuntaner: maybe you better ask on #juju. here it's more development of juju09:39
Muntanerok TheMue, sorry : )09:48
TheMueMuntaner: yw, no need to excuse. is only a hint.09:49
voidspacejam: stdup?10:03
voidspacedooferlad: frobware: small PR http://reviews.vapour.ws/r/3590/10:03
=== Odd_Blok1 is now known as Odd_Bloke
mupBug #1536587 opened: juju's MAAS bridge script is echoed to the console by cloud-init during bootstrap <bootstrap> <network> <juju-core:New> <https://launchpad.net/bugs/1536587>11:33
mupBug #1536587 changed: juju's MAAS bridge script is echoed to the console by cloud-init during bootstrap <bootstrap> <network> <juju-core:New> <https://launchpad.net/bugs/1536587>11:39
mupBug #1536587 opened: juju's MAAS bridge script is echoed to the console by cloud-init during bootstrap <bootstrap> <network> <juju-core:New> <https://launchpad.net/bugs/1536587>11:42
mupBug #1536587 changed: juju's MAAS bridge script is echoed to the console by cloud-init during bootstrap <bootstrap> <network> <juju-core:New> <https://launchpad.net/bugs/1536587>11:45
mupBug #1536587 opened: juju's MAAS bridge script is echoed to the console by cloud-init during bootstrap <bootstrap> <network> <juju-core:New> <https://launchpad.net/bugs/1536587>11:48
rogpeppeany fancy a review of a new (to juju/utils) URL utility function? https://github.com/juju/utils/pull/19111:52
mgzI'll bite.11:54
rogpeppemgz: ta!11:55
rogpeppemgz: if you can think of any unusual corner cases that aren't covered in the test table, i'd like to know11:56
mgzhm, there's nothing actually urly about this11:56
rogpeppemgz: urls are an obtuse thing!11:56
mgzdoesn't do anything with schemes11:56
rogpeppemgz: URL paths11:57
rogpeppemgz: still part of URLs11:57
rogpeppemgz: the RFC is definitely pertinent here11:58
mgzrogpeppe: this is basically os.path.relpath though11:59
rogpeppemgz: yeah, except for it's URL-specific11:59
rogpeppemgz: os.path.relpath wouldn't work here11:59
mgzI'm not seeing any case where it actually differs12:00
rogpeppemgz: os.path.relpath doesn't treat trailing slashes as significant12:00
mgzI mean, that's not a reason we don't need this, if go doesn't have it12:00
mgzaha, yeah, that is true12:00
mgzwhich if these tests cover that...12:01
mgzrogpeppe: does it ever make sense for base to not start with a / ?12:04
rogpeppemgz: not in the use case that we've been using it for, but it's possible12:05
mgzalso both have to be normalised already (as in, not contain .././)12:05
rogpeppemgz: yeah, that's true. perhaps i should normalise them with path.Clean12:06
mgzasserting both are abs paths seems good for the moment12:06
mgzrogpeppe: lgtm12:09
rogpeppemgz: thanks12:09
rogpeppemgz: tbh i don't know of any http muxers that allow .. or . in the middle of paths.12:10
rogpeppemgz: although... actually i think http.ServeMux returns a redirect if the path isn't clean, which kinda avoids the issue12:10
mgzI think just stating the obvious in the function doc comment should be fine12:13
mgzthere are few cases in code where you'll actually deal with non-normalised paths and they tend to be obvious12:14
rogpeppemgz: yeah12:15
frobwarevoidspace, dooferlad: can we take another pass through this - http://reviews.vapour.ws/r/3570/. I've only just got back to it...12:24
voidspacefrobware: looking12:24
voidspacefrobware: your unique option filtering, is that tested?12:31
frobwarevoidspace, since I posted I'm going to revert that change.12:32
voidspacefrobware: unique_options should really be a set not a list12:32
voidspacefrobware: hah12:32
frobwarevoidspace, set doesn't guarantee original order.12:32
voidspacefrobware: true enough12:32
frobwarevoidspace, I could switch to ordered set.12:32
frobwarevoidspace, but I know recall why I started making it unique and that should be a separate change.12:33
voidspacefrobware: ok12:34
frobwarevoidspace, in my experiments yesterday with dns-nameserver we need to collapse duplicate entries to a single line, so this is not appropriate.12:34
voidspacefrobware: for small "sets" a list is fine12:34
voidspacefor long lists testing membership is slow12:34
frobwarevoidspace, I want fewer changes to the original /e/n/i as possible.12:34
frobwarevoidspace, makes it clear what buthering "we" did12:34
voidspacefrobware: good call12:34
frobwarevoidspace, understood the perf. call, but we're dealing with < 10 entries in general.12:35
frobwarevoidspace, of all the things... I don't think we have a performance problem. :)12:35
voidspace:-)12:37
voidspacefrobware: is the new diff ready for review?12:38
frobwarevoidspace, yep. pushed.12:38
voidspacefrobware: LGTM12:41
frobwarevoidspace, thx12:41
perrito666axw: wait, are we droping $JUJU_HOME?12:58
frobwaremgz, ping13:35
perrito666wow testing is too different from the version we are using, anyone knows why?13:36
mgzfrobware: hey13:36
frobwaremgz, so we monster merged master into maas-spaces and I was looking when maas-spaces was last blessed which turns out to be ~39 days ago. Is and will maas-spaces be tested in CI? Do we have to do anything to trigger this, et al? Would really like to ensure our merge into maas-spaces will eventually get back into a blessed stated so we can merge into master.13:37
mgzfrobware: I can get it queued today13:38
frobwaremgz, great. thanks.13:38
mgzwe're still suffering from shortage of maas capacity13:39
sinzuimgz: mass 1.9 is ill. Nodes are not coming up. Releasing the held nodes and restarting did not fix the issue. I need more coffee before I can fix this13:51
mgzsinzui: will have a look13:53
beisnersinzui, mgz, maas trusty daily image woes.  #maas @ c14:16
sinzui:/14:16
sinzuithank you beisner14:16
beisnersinzui, yw i think  ;-)14:17
perrito666jam: ?14:19
jamperrito666: ?14:19
natefinchit's a punctuation fight!  Go!!14:19
perrito666I have a doubt (2 actually) regarding juju2 supporting xdg14:20
perrito666natefinch: please, I have stuff like ¿14:20
perrito666jam: are we dropping JUJU_HOME ?14:20
jamI would think that JUJU_HOME supersedes any other setting14:21
sinzuimgz: Can you review https://code.launchpad.net/~sinzui/juju-ci-tools/unit-test-install-deps/+merge/28345014:21
perrito666jam: I thought so too, but axw made a few comments in my PR which made me doubt14:21
jamlink?14:21
perrito666the second is regarding XDG_DATA_HOME are we honoring that?14:22
perrito666jam: the second is regarding XDG_DATA_HOME are we honoring that14:22
jamperrito666: I don't think we have the concept of a set of DATA files. Isn't that usually things for local installs of resources that you consume?14:23
jamgiven .local/share14:23
jamwhich matches /usr/share, right?14:23
perrito666jam: well it is a bit of a blurry concept I think, I have seen people not be consistent on that one14:24
perrito666that is why I did a straight replace14:24
jamso, *today* I don't believe we consume anything from /usr/share14:24
perrito666but if we are going to deem certain things as "data" there is more thought to be put into this14:24
jamthe closest we have is /usr/lib/juju/ where we put things like mongo14:24
jambut I don't think we have any plans to read that out of a users home dir14:24
jamI'd think we'd just support XDG_CONFIG_HOME for this14:25
perrito666works for me14:26
perrito666jam: tx for your help14:30
jamperrito666: happy to14:30
natefinchanyone have ideas on how I can store (and more importantly) update a map[string]string in mongo?14:38
perrito666natefinch: you just do it?14:38
natefinchperrito666: update is the tricky one.. is there an operation to just update a single entry in a map in the DB?14:39
perrito666natefinch: you seem to be confusing mongo with a serious db :p14:39
natefinchperrito666: heh14:39
natefinchperrito666: I'm trying to avoid having to read the map out and then write it back14:39
perrito666nope, you are doomed to it14:40
perrito666and in the middle the incertitude of race conditions :p14:40
natefinchpleh14:40
perrito666jokes apart, I dont think there is a db that allows you to do a partial update of a piece of data14:40
perrito666your smalles unit is a doc's field and you want to make a change smaller than that14:41
natefinchperrito666: I just didn't know if there was some mongo hackery, since a map is just like an object, if I could do foo["bar"] = "baz"14:41
natefinchperrito666: looks like you can do it, so like {$set: {"foo.bar": "baz"} }14:45
perrito666what? :\14:46
perrito666that surprises me14:46
natefinchthe map is really an "embedded document" in the field14:47
perrito666can you do that with other types?14:47
perrito666natefinch: ah, I would not expect maps to be treated as documents14:47
natefinchperrito666: in mongo (and json) map == object/document14:48
perrito666natefinch: I am curious on how we are serializing de-serializing that14:48
natefinchperrito666: that's what I'm trying to figure out... probably map[string]interface{}14:49
perrito666that whole process deppends a lot on us being  nice people :p14:50
natefinchericsnow: it occurs to me, we have no unique id for a resource :/14:58
natefinchericsnow: the unique id is service/resourceName/resourceRevision ... and revision is either the revision or the timestamp, depending on the type of resource :/14:59
perrito666remove all the things that say "remove in 2.0" is a feeling equivalent to peeling the film of a new screen15:07
frobwarecherylj, ping15:29
cheryljhey frobware, what's up15:30
frobwarecherylj, I think I deleted the wrong meeting - or it's disappeared from my cal. Are we meeting now?15:30
cheryljfrobware: nope, in 30 minutes15:30
cheryljfrobware: but given your email, we can postpone / cancel if you're swamped15:31
frobwarecherylj, ah. got it. sorry for the noise. coffee is wearing off.15:31
katcoperrito666: must be enjoyable15:31
katcoperrito666: glad you have the honor15:31
frobwarecherylj, can we? I have stuff for 1.25 and maas-spaces pending, plus other stuff...15:32
cheryljfrobware: yeah, no prob.  I can cancel and send some comments / ideas in an email15:32
frobwarecherylj, also need to reflect on the nature and timing as I mentioned via email15:32
frobwarecherylj, any thoughts on when a 1.25.4 would be? I was starting to look at #1532167 again.15:41
mupBug #1532167: maas bridge script handles VLAN NICs incorrectly <addressability> <maas-provider> <network> <juju-core:Triaged> <juju-core 1.25:Triaged by frobware> <https://launchpad.net/bugs/1532167>15:41
cheryljfrobware: ha, that bug just came up in the cross team call.15:41
frobwarecherylj, not terribly surprised...15:42
cheryljfrobware: I'm going to say 2 - 4 weeks, to be realistic15:42
frobwarecherylj, ok. I'm asking because we have way better support for bond, vlans, vlans on bond in maas-spaces (in the bridge script). so trying to decide whether patching what's in 1.25 or taking wholesale changes from maas-spaces might be better.15:43
frobwarecherylj, can they work without a fix for 2-4 weeks?15:44
frobwarecherylj, tentatively sometime next week15:52
beisnero/  frobware, thanks again for all your work on the ifaces fun.   much appreciated.15:56
frobwarebeisner, np. it's great we have a better understanding of how it all plumbs together now.15:56
=== abentley_ is now known as abentley
lazypowercherylj how long until 2.0-alpha1 lands in the -dev ppa?16:20
lazypowercherylj i ask as i just encountered a bug that says it was 1.25 fix-released, but it doesnt appear to be in practice: http://pad.lv/151237116:20
cheryljlazypower: should be very soon.  sinzui ^^ ?16:20
lazypowerso i just had the develooer upgrade to 1.26-alpha3, this will be jarring if they get a shiny 2.0-alpha1 later today :P16:21
cheryljlazypower: which 1.25 were you using?16:22
sinzuilazypower: that bug is fixed in the proposed juju. We are waiting for confirmation juju just works before completing the release.16:22
cheryljlazypower:  that bug isn't fixed in any stable 1.25.  The versions which have that fix are still in proposed16:22
lazypowerah ok16:22
lazypowerwell, here's to have immediate external testing to 2.0 when it lands16:23
* lazypower cheers16:23
cherylj:)16:23
lazypoweri have a meeting with them in 30, i'll put a little bug in their ear they're going to be on 2.0 in the next day or so.16:23
lazypowershould we encounter critical punches, i can have them revert to the proposed ppa and that should get themb ack in stable w/ a maas 1.9 fix?16:24
cheryljlazypower: yeah.  1.25.3 was just put into proposed, and that has a lot of maas networking fixes16:24
lazypowerok, bueno. Thanks for the background info16:24
cheryljlazypower: let me know if they run into issues with 2.0.  I'd love to hear feedback16:25
lazypowerwill do16:28
natefinchericsnow: is it too evil if I just reuse SetResource and pass it an ID that already has the unit tag embedded in it?16:48
ericsnownatefinch: borderline evil :)16:48
natefinchericsnow: ahh, better: I can add a possibly-empty unit field to set-resource16:49
natefinchericsnow: that way I don't have to encode the ID outside the DB code16:49
ericsnownatefinch: there's enough distinction that it may be better to at least have 2 separate methods that call the same underlying (unexported) method16:49
natefinchericsnow: yeah, ok... I was trying to be lazy... too lazy in this case, you're right :)16:50
ericsnownatefinch: :)16:50
natefinchman I hate that Tags have a String() string and an Id() string .... which one am I supposed to use when?  Why are there two string representations?17:13
natefinchericsnow: why do we pass the id and the resource itself separately to persist.SetResource?  Wouldn't it be better to just pass the resource and let the function take the id from the name on the resource?17:17
ericsnownatefinch: not sure17:19
natefinchericsnow: removing it would prevent people from doing evil things like I was planning to do ;)17:19
ericsnownatefinch: re: tags, use Tag.Id() (and I'd recommend passing that ID around rather than the tag)17:19
natefinchgah, I hate passing around raw strings. Then you never know what they're really supposed to be, and so you have to traverse back up the tree to figure out what string is actually being set...17:20
voidspacefrobware: that's sneaking assigning that card to me...17:20
natefinchif it's always the results of a UnitTag.Id().. why not just pass the UnitTag?17:21
natefinchotherwise, you're just encoding way high up in the stack what the DB id format is17:21
frobwarevoidspace, sorry, was on a mission to ensure the iteration was fully loaded...17:21
frobwarevoidspace, want to chat about it?17:21
frobwarevoidspace, it was really because post your monster merge I wanted to keep an eye out for any fallout17:22
ericsnownatefinch: tags are a wire format type (my understanding), not suitable for use outside the API17:22
ericsnownatefinch: regarding that "id" parameter, I expect it is an artifact of copying (or at least following the example of) the equivalent code from payloads17:24
natefinchericsnow: I'll think about submitting a separate patch to strip it out, but not that important right now17:25
ericsnownatefinch: in that case the payload ID wasn't derived from the payload name (or any other info)17:25
mupBug #1536728 opened: Juju's MAAS bridging script needs to de-duplicate dns-* iface options <maas-provider> <network> <juju-core:New for frobware> <https://launchpad.net/bugs/1536728>17:25
ericsnownatefinch: see payload/state/unit.go (Track)17:26
ericsnownatefinch: yeah, that should be fine since we are just using the resource name for the ID17:26
natefinchericsnow: I generally frown on anyone way outside the DB layer deciding what the ID for the item in the DB should be.17:27
voidspacefrobware: fallout, as in it might start passing? :-)17:27
frobwarevoidspace, ping me when it does. :-D17:27
ericsnownatefinch: the ID (in the case of payloads) is determined by state17:27
voidspacefrobware: I need to get the "api shut off" done on maas-spaces, then I can take a look at it17:27
ericsnownatefinch: that is not the same thing as the doc ID (which is contained strictly within the persistence layer)17:28
frobwarevoidspace, yep fine. again, I just didn't want the CI build to pass through the cracks.17:28
voidspacefrobware: sure :-)17:28
voidspacefrobware: just finished checking the differences between master and maas-spaces for potential missing stuff17:29
frobwarevoidspace, golden? ;)17:29
voidspacefrobware: a *lot* of files renamed on master, and a lot of new files on maas-spaces17:29
voidspacefrobware: nothing problematic though (I'm pretty sure)17:29
frobwarevoidspace, great. thanks for the due diligence.17:30
voidspacefrobware: looking at default gateway on the new NetworkInterfaces implementation too17:30
voidspaceas that doesn't exist on master and the fix there on applies to the legacy version17:30
voidspacefrobware: ah, however the new one does set a GatewayAddress17:31
mupBug #1536728 changed: Juju's MAAS bridging script needs to de-duplicate dns-* iface options <maas-provider> <network> <juju-core:New for frobware> <https://launchpad.net/bugs/1536728>17:31
voidspacefrobware: yep the new one takes it from the interface subnet17:32
voidspaceso that's cool17:33
voidspacedone and dusted17:33
mupBug #1536728 opened: Juju's MAAS bridging script needs to de-duplicate dns-* iface options <maas-provider> <network> <juju-core:New for frobware> <https://launchpad.net/bugs/1536728>17:34
frobwarevoidspace, great17:35
voidspacefrobware: as an experiment I just did another merge of master17:36
voidspacefrobware: there are conflicts in bridgescript_test.go17:36
voidspacefrobware: want me to resolve and push so we can track master17:36
voidspace?17:36
frobwarevoidspace, so how did that happen? In your branch? or mine which merged sometime earlier?17:37
voidspacefrobware: I did a fresh checkout of maas-spaces and merged upstream/master into it17:38
frobwarevoidspace, does it look the conflicts came from this https://bugs.launchpad.net/juju-core/+bug/153479517:38
mupBug #1534795: unit loses network connectivity during bootstrap: juju 1.25.2 + maas 1.9 <maas-provider> <uosci> <juju-core:Fix Released by frobware> <juju-core 1.25:Fix Released by frobware> <https://launchpad.net/bugs/1534795>17:38
voidspacefrobware: is there a linked github branch?17:39
voidspacefrobware: HEAD has a new "pre-up" in one of the tests17:40
frobwarevoidspace, https://bugs.launchpad.net/juju-core/+bug/1534795/comments/1217:40
mupBug #1534795: unit loses network connectivity during bootstrap: juju 1.25.2 + maas 1.9 <maas-provider> <uosci> <juju-core:Fix Released by frobware> <juju-core 1.25:Fix Released by frobware> <https://launchpad.net/bugs/1534795>17:40
voidspacefrobware: cool, thanks - looking17:40
voidspacefrobware: yes17:41
voidspacefrobware: do you want to resolve it? Would only take a minute and there's already quite a bunch of changes on master we should pull in17:41
frobwarevoidspace, swamped. and need to leave in 19 mins...17:42
voidspacefrobware: ok17:42
frobwarevoidspace, can do this AM tomorrow if it helps.17:42
voidspacefrobware: on maas-spaces runScript takes a new isBond parameter - and I'm not sure what that should be on the new test from master17:43
voidspaceprobably false though17:43
voidspacefrobware: I'll try and resolve, if I get bogged down I'll abandon17:44
frobwarevoidspace, at first blush I would say that's the wrong way round.17:44
frobwarevoidspace, the isBond should only be relevant on master and 1.25.17:44
voidspaceyou might be right17:44
voidspacefrobware: multiple conflicts in the test scripts themselves, and my head is too tired to work them out17:46
voidspaceit can wait until tomorrow morning I think17:46
voidspacenatefinch: ping17:46
natefinchvoidspace: pong17:46
voidspacenatefinch: asking in case you know...17:47
voidspacenatefinch: the API is switched off during bootstrap until a certain point17:47
voidspacenatefinch: I need to  ensure that the API remains off until a worker (that fires on bootstrap) has ccompleted17:47
voidspacenatefinch: do you know where I would find the API switching on/off code?17:48
voidspaceor the machinery/mechanism we use to do that17:48
voidspaceif not I will go spelunking in cmd/jujud17:48
natefinchvoidspace: I don't know specifically, but I would start looking at cmd/jujud/agent/machine.go, since that's where all the workers are, and some of them are specified as API workers, which require the API to be on... hopefully you could work backward to figure out where the API gets turned on17:50
voidspacenatefinch: that's a good clue, thanks17:50
natefinchvoidspace: there's an APIWorker method that is probably what you want to look at... i.e. what starts that worker17:51
voidspacenatefinch: cool17:51
natefinchvoidspace: so maybe I do know where to look, after all ;)17:52
voidspacenatefinch: you usually do :-)17:52
voidspacenatefinch: appreciated17:52
arosaleshello, I recall a developer environments.yam key  for GCE to use a specific image, but I don't remember the exact key18:29
arosalesdo that sound familiar to anyone?18:29
cheryljarosales: I thought there used to be something like that for ec2, but hasn't been there for a while18:34
arosaleshm, I thought I saw one for azure and ice . .  .18:37
arosaless/ice/azure18:38
natefinchpretty lonely in this juju core team meeting all by myself19:03
perrito666natefinch: I believe that last night meeting was a replacement for this one19:05
arosalesis "force-image-name" still recognized by azure?19:05
natefinchperrito666: ahh19:05
natefincharosales: for the legacy azure provider, yes19:07
natefincharosales: I don't know how that might relate to the new azure provider19:07
arosalesnatefinch: thanks, do you know if a similar option is available for GCE?19:08
arosalesor AWS?19:08
natefincharosales: definitely not for GCE19:12
natefincharosales: not for aws either19:13
arosalesnatefinch: ok, thanks19:13
natefincharosales: it's something we've wanted to implement for forever, it just never was a high enough priority (and none of the devs were annoyed enough to just do it themselves)19:15
arosalesnatefinch: understood, thanks for the info19:15
natefinchericsnow: you know something should be a function not a method when..... id := Persistence{}.resourceID("spam", serviceID, "")19:34
ericsnownatefinch: likely another artifact from payloads19:35
katconatefinch: meeting running long, have to cancel19:50
natefinchkatco: ok19:50
natefinchericsnow: how's the get resource stuff going?19:56
ericsnownatefinch: slow (still not feeling great)19:57
natefinchericsnow: understandable19:58
natefinchericsnow: anything I can do to help?  My code is like 10% dependent on your branch.20:02
ericsnownatefinch: not a ton (mostly a lot of mechanical cleanup)20:03
natefinchericsnow: fair enough20:04
katcoericsnow: going to cancel our 1:1 as well; we're both not feeling great20:51
ericsnowkatco: k20:51
katcoericsnow: natefinch: sorry bout that20:51
perrito666katco: ericsnow you can get together and drink chicken soup during the standup20:52
perrito666*1:120:52
katcoperrito666: i need to find a vegetarian replacement for chicken soup20:52
perrito666katco: I am pretty sure that those powder based chicken soups are far from any chicken :p20:53
katcolol20:53
perrito666sometime ago I bought soy hot dog sausage, surprisingly good20:54
katcoperrito666: i have discovered that the key to being vegetarian is not trying to find meat replacements, but to just cook delicious meals that just don't call for meat20:55
perrito666which makes you think how much of the flavour on the original ones is influenced by the actual ingredients20:55
perrito666sure thing, I cook a lot without meat in summer and that is good20:56
natefinchyeah, you can get a long way with just salt, oil, onions, garlic, and peppers of various sorts.20:56
natefinchand spices of course20:56
menn0-afkcherylj: I just check a recent failure of the MASS OS deployer CI job for master and I also see the the hook execution lock being incorrectly broken there21:11
menn0-afkcherylj: the following run (with the fix I think) passed21:11
menn0-afkdavecheney: ^21:11
=== menn0-afk is now known as menn0
=== urulama is now known as urulama__
perrito666menn0: morning, could you re-review the xdg branch?21:13
menn0perrito666: I will. I may not be able to do it for a couple of hours though. is that ok?21:13
menn0perrito666: FWIW I had a quick look yesterday and it looked good21:13
menn0perrito666: I'll look more closely today.21:14
perrito666menn0: no hurry at all21:14
perrito666menn0: I am eod21:14
menn0perrito666: ok cool. I'll review it before your next working day.21:14
cheryljmenn0: This test run of master doesn't have davecheney's fixes in it:  http://reports.vapour.ws/releases/352921:14
perrito666menn0: tx21:15
cheryljmenn0: is that the one you were looking at?21:15
menn0cherylj: yep that's one21:15
menn0cherylj: it got lucky then :)21:15
cheryljmenn0: yeah :)  Are you rebasing machine-dep-engine?21:15
menn0yep... about to hit merge on it21:16
* thumper puts his head down to work21:18
menn0cherylj: http://juju-ci.vapour.ws:8080/job/github-merge-juju/6057/21:19
=== menn0 is now known as menno-afk
natefinchericsnow: ahh, hmm... seems like stub implementations should not be calling errors.Trace on the errors they return.. it obscures whether or not we're returning the correct error21:30
ericsnownatefinch: use errors.Cause()21:30
natefinchericsnow: but then I can't tell if my code is incorrectly wrapping the error, or if it's just the stub doing that21:31
cheryljhey perrito666, I opened bug 1536792 to reference in the 2.0-alpha1 release notes as a "known issue".  I know you committed fixes after the revision we're going to release.  Was there other work needed to address that issue in the various providers?21:31
mupBug #1536792: Some providers release wrong resources when destroying hosted models <juju-core:Fix Committed> <https://launchpad.net/bugs/1536792>21:31
perrito666cherylj: I actually am tasked with opening bugs for the changes I committed so we track them21:32
natefinchericsnow: for example, my function should just pass through the error... but I can't test that it does that, because the stub is wrapping the error I give it.21:32
cheryljperrito666: we can just use that one bug and describe which providers release what resources21:32
cheryljperrito666: I opened it now for you since we're very very close to actually releasing alpha1 :)21:32
natefinchericsnow: if I call errors.Cause, I can't tell if I'm just unwrapping what the stub wrapped, or if I'm also unwrapping what my code (incorrectly) wrapped21:33
cheryljperrito666: and I want to make sure it's included in the release notes.21:33
ericsnownatefinch: then perhaps use a stub that doesn't trace errors?21:33
perrito666cherylj: great, is a comment the best way to note which are the providers ?21:33
perrito666we should have provider tags21:34
cheryljperrito666: you can do that, or modify the original description.21:34
natefinchericsnow: just seems like a general good practice - don't wrap errors in stubs.  but yes, in this instance, I can make a different stub that doesn't wrap21:34
perrito666oh, look at that, I have prmissions21:34
perrito666there you go21:36
perrito666EOD, cheers  all21:36
cheryljthanks, perrito666!21:39
natefinchericsnow: https://i.imgflip.com/xr6ig.jpg21:39
cheryljnatefinch: lol!21:40
natefinch:D21:40
natefinchcherylj: perrito666 suggested I turn it into a meme to soften the blow :)21:42
cheryljI like it21:42
natefinchfrom now on I'm giving all my bad news via memes21:43
cheryljnatefinch is GGG:  https://imgflip.com/i/xr9f321:44
mupBug #1536792 opened: Some providers release wrong resources when destroying hosted models <juju-core:Fix Committed> <https://launchpad.net/bugs/1536792>21:44
natefinchcherylj: http://goo.gl/MMZ2eq21:45
cheryljha21:45
cheryljso rcj doesn't follow memes much, so I often make a reference to one and he stares at me blankly.21:46
cheryljor says something like "is that a meme" thing?21:46
cheryljSometimes it's like I'm married to a member of AARP21:46
natefinchrofl21:46
mupBug #1536792 changed: Some providers release wrong resources when destroying hosted models <juju-core:Fix Committed> <https://launchpad.net/bugs/1536792>21:47
natefinchmy wife said "on fleek" the other day, and I had no idea what she was talking about.21:48
cheryljoh that's new to me21:48
cheryljI'm so out of touch!21:48
cheryljimgur you have failed me!21:49
natefinchmy wife loves Biden memes, so it came up from this: http://napturalnicole.com/wp-content/uploads/2015/01/IMG_6731.jpg21:49
cheryljhaha!21:50
mupBug #1536792 opened: Some providers release wrong resources when destroying hosted models <juju-core:Fix Committed> <https://launchpad.net/bugs/1536792>21:50
natefinchevidently it means "on point" as in "really well done"21:50
cheryljcan I get a review?  http://reviews.vapour.ws/r/3599/21:51
cheryljnatefinch: I googled it21:51
natefinchcherylj: me too :)21:51
natefinchcherylj: I'm wondering if an equally valid, perhaps more correct fix for the failing test is to simply delete that line21:57
natefinchcherylj: or at least, don't check the content type21:57
mwhudsonis anyone working on the fact that github.com/juju/juju/cmd/jujud/agent fails intermittently with go 1.5?22:00
=== natefinch is now known as natefinch-afk
cheryljnatefinch-afk: I'm not convinced that removing the check is correct.  I think we *do* want to make sure that the correct content type is generated, but should accept that the correct type can be either javascript or x-javascript22:02
bdxcore, dev: Are there plans for storage using openstack provider?22:04
cheryljnatefinch-afk: the content type is generated by the code being exercised, so I think it's a valid thing to check.  It can just vary based on centos vs. ubuntu22:05
cheryljbdx, we do support storage for openstack:  https://jujucharms.com/docs/devel/storage22:08
cheryljbdx: is that what you're looking for?22:09
bdxcherylj: yea22:09
bdxcherylj: I'm not sure you sent the correct link ...22:10
cheryljbdx: maybe I misunderstood what you're looking for?22:10
bdxcherylj: can you point out where the openstack provider portion is in that link .... oooh ... I found it .. "The OpenStack/Cinder provider does not currently have any configuration."22:12
cheryljbdx: yeah, there's no openstack specific storage configuration yet22:13
bdxcherylj: ok, should I feature request it? do you know if its on the roadmap?22:14
cheryljbdx: do you know specifically what you'd like to be able to specify about storage on openstack?22:15
bdxcherylj: availability_zone, type, size22:19
cheryljbdx: yeah, you can open a bug to request those config options and I'll add it to our list of requests we track22:20
bdxcherylj: thats awesome! thanks!22:20
bdxarosales:^^22:20
bdxcherylj: https://bugs.launchpad.net/juju-core/+bug/153681922:47
mupBug #1536819: Feature Request: Storage support for openstack provider <juju-core:New> <https://launchpad.net/bugs/1536819>22:47
cheryljthanks, bdx.  I'll add it to our listing here:  https://github.com/juju/juju/wiki/Feature-Requests22:49
mupBug #1536819 opened: Feature Request: Storage support for openstack provider <juju-core:New> <https://launchpad.net/bugs/1536819>22:50
arosalesgot another xenial question :-)22:52
arosalesI feel like it should be possible to bootstrap a xenial model and services if I set default-series to xenial, image-stream to daily and agent-stream to devel22:53
arosalesbut I get unable to find matching tools :-/22:54
arosaleshttp://paste.ubuntu.com/14593295/22:54
arosalesagainst aws22:54
arosalesis it because my desktop has to be Xenial as well?22:54
arosalesbdx: ya the juju-core folks rocks.  thanks cherylj22:55
arosalesbdx: seem very reasonable as we tackle storage in openstack which gets a lot of usage :-)22:56
davecheneymenno-afk: sweet22:59
arosales--upload-tools also ends the same way:   http://paste.ubuntu.com/14593344/23:01
arosalesits seems like it should work, but wanted to get folks thoughts here on it.23:02
wallyworldaxw: perrito666: standup?23:20
=== menno-afk is now known as menn0
mupBug #1536838 opened: state/lease: package in wrong location <juju-core:New> <https://launchpad.net/bugs/1536838>23:56

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