/srv/irclogs.ubuntu.com/2014/05/27/#juju-dev.txt

hazmatumm.. https://bugs.launchpad.net/juju-core/+bug/1256053/comments/300:31
hazmati think we need to mark this critical https://bugs.launchpad.net/juju-core/+bug/121557900:31
_mup_Bug #1215579: Address changes should be propagated to relations <addressability> <reliability> <juju-core:Triaged> <https://launchpad.net/bugs/1215579>00:31
hazmati'm working up a script to resolve it, but even transporting the script to all the units is a bit tedious without resorting to ansible and a juju inventory00:32
hazmatposted a workaround to both, nevermind re critical..00:48
davecheneyhazmat: createing a worker running on ecah machine agent that listens to netlink should be straight forward00:56
davecheneywhat hook would it fire ?00:56
hazmatdavecheney, the user's issue isn't actually the one that bug00:57
hazmatdavecheney, the netlink this is pure optimization00:57
hazmatdavecheney, the actual issue is that juju doesn't update the relations per bug http://pad.lv/121557900:57
hazmatdavecheney, ie. you can have unit related to another service whose ip addrss changes. juju will pick up the address change. but the private-address of that unit in its relations (which juju set) will never be updated.00:58
hazmats/netlink this/netlink thing00:58
hazmatdavecheney, fwiw.. here's my workaround for folks today.. https://gist.github.com/kapilt/a61efcb4eaef9e68539700:59
wallyworld_hazmat: i'll get tanzanite to start working on that bug after the githib migration; likely early next week01:00
hazmatwallyworld_, awesome, thanks01:00
wallyworld_maybe even this week if we have bandwidth01:00
wallyworld_hazmat: stuff like that, just ensure i know about it and we'll prioritise it01:00
hazmatwallyworld_, will do.01:01
* hazmat calls it a night01:01
axwmorning all01:03
wallyworld_axw: morning01:04
wallyworld_axw: i've got agreement to set up a test instance running mongo 2.7.1 to see if that hep with the mongo instability01:05
wallyworld_well, mongo > 2.4.x01:05
wallyworld_2.7.1 is the latest01:05
axwwallyworld_: cool01:05
wallyworld_it's compiling now on the instance, will create a jenkins job01:05
wallyworld_axw: cause one of the failures with replicaset tests i looked at yesterday - the mongo process just died for no reason and hence broke the test. there's several mongo bugs which might be culpable which are fixed in 2.6 or later which are not being back ported01:07
wallyworld_so if this goes well, we'll look to get mongo 2.6/7 into juju-mongodb01:07
axwwallyworld_: did it actually die (core?) or did it just drop the connection?01:08
axwwallyworld_: meant to ask on the hangout, but forgot01:08
wallyworld_axw: the log showed the mongo process itself died01:08
axwok01:08
wallyworld_and the test tried to reset and ping and failed cause the process was gone01:08
* wallyworld_ taps fingers waiting to mongo to finish compiling01:09
=== revagomes_ is now known as revagomes
davecheneythumper: http://paste.ubuntu.com/7525844/01:38
davecheneywhat am I not seeing ?01:38
thumperdavecheney: whitespace maybe?01:39
thumperdavecheney: menn0 and I suggest doing a full print prior to the assert01:40
thumperjust to check01:40
menn0err := st.users.Find(bson.D{01:41
menn0{"_id", bson.RegEx{01:41
menn0Pattern: "^" + regexp.QuoteMeta(name) + "$",01:41
menn0Options: "i", // case-insensitive01:41
menn0}}}).One(udoc)01:41
menn0if err == mgo.ErrNotFound {01:41
menn0err = errors.NotFoundf("user %q", name)01:41
menn0}01:41
menn0return err01:41
menn0}01:41
menn0sorry, ignore that01:41
davecheneythumper: full print ?01:41
menn0davecheney: fmt.Printf("%q", tw.Log)01:42
davecheneykk01:43
davecheneyhmm, that just makes things more confusing01:48
* davecheney goes to look at js.LogMatches01:48
davecheneygrr01:52
davecheneythis is a bug with the matcher01:52
davecheneyhttp://paste.ubuntu.com/7525911/01:52
davecheneywhen times didn't match, the matcher returns false but keeps the reason to itself01:53
davecheneyhas anyone tried to write a gocheck checker that checks the output of another checker02:26
davecheneyoh and the checker type is not exported02:29
* davecheney throws a table02:29
axwdavecheney: gocheck.Not does that02:44
davecheneyaxw: can I use that to write a test of a checker ?02:47
axwdavecheney: sorry maybe I misunderstood. I don't know how you'd do that02:48
davecheneyaxw: s'ok, i'm working on something02:48
jcw4if state/state.go has an un-exported logger, can I use that in state/action.go, or should I declare a new logger with a different name to avoid a name collision?04:13
jcw4thumper: since it's midday likely for you, and you just emailed about errors... ^^^ :)04:15
jam1jcw4: you can use logger in any file in the same package04:16
axwjcw4: all source files in the same package can/should use the same logger, as a general rule04:16
jam1so just use "logger.Debugf" in action.cog04:16
jcw4jam1, axw great.  Thanks04:16
jimmiebtlrIs it expected that the output of add-machine is to Stderr?  ex. "created machine 1"04:17
wallyworld_axw: with the replicaset stuff - we cab back it out if it doesn't help, or, if 2.7.1 works better we can change it also, or william likes the idea of mocking out the replicaset behaviour and adding separate CI tests so we'll be looking into that as well04:26
axwwallyworld_: sounds good04:26
jcw4jimmiebtlr: I assume so... sorry. I don't know04:43
jcw4I can't seem to get -gocheck.f="ActionSuite"04:47
jcw4to work04:47
jcw4is there a trick to it, or does it just not work?04:47
jcw4jam1: ^^  :)04:49
jam1jcw4: you're sure it is spelled "ActionSuite" and not "actionSuite" or some other spelling?04:49
jcw4jam1: interesting... yep, just verified04:50
jam1go test -gocheck.v -gocheck.f=apiclient does what I would expect04:50
jcw4is it somehow related to not having the testing package initialize in that suite?04:51
jam1jcw4: are you trying to run the tests recursively? or just in one dir?04:51
jcw4go test -gocheck.f="ActionSuite" ./state/...04:51
jam1jcw4: if you don't have a testing.T function in a package, then no tests get run by "go test"04:51
jam1jcw4: well, I'm sure that syntax won't work, because you are passing the "…" at the end04:51
menn0jcw4: which directory are you running "go test" from?04:51
jcw4jam1: I see04:52
jam1and go test is a bit picky about argument order04:52
jcw4menn0: juju-core04:52
jcw4what is the preferred argument order jam104:52
jam1jcw4: at the least, you need to spell it "go test ./state/… -gocheck.f=ActionSuite"04:52
jcw4jam1: Ah!  I see04:52
jam1the issue is that there are some arguments that are processed by "go test"04:52
menn0try changing to the package directory where ActionSuite is defined04:52
jcw4menn0: +104:52
jam1and there are other arguments that are processed by the binary that it builds and runs for you04:52
jam1"…" is telling *go test* to run everything04:53
jam1"-gocheck.f" is being passed to the binary that gets built to tell it what to run04:53
axwI believe the -gocheck args don't get passed down if you run use "..."04:53
jam1since "go test" itself doesn't understand what "-gocheck" means, it stops processing arguments and hands the rest to the binary being run04:53
axwdavecheney: right? ^04:53
jam1axw: it does, you just have to spell it right04:53
jcw4axw, jam1, menn0 fantastic help.  Thanks04:54
jam1axw: I originally thought it was all broken because "-gocheck.v" looks like it doesn't work, but actually it does, but without "-v" "go test" in recursive mode suppresess the output04:54
jam1so you have to do:04:54
jam1go test -v ./… -gocheck.v -gocheck.f=XXX04:54
jam1axw: ^^04:54
jam1axw: and you can't quite do that in juju-core because the 3rd party packages under utils don't use gocheck, and thus fail if you try to pass them those flags04:55
axwhmm ok04:55
axwgocheck.v isn't doing anything when I use ...04:55
jam1what sucks, is that having the test binary passed positional arguments04:55
jam1doesn't fail04:55
jam1but it does fail if you pass named options04:55
jam1(ah consistency....)04:55
jcw4axw, jam1, menn0 yep it worked (when I didn't use ..., and reordered gocheck opts to the end)04:55
axwjam1: ah right, missed the need for -v04:57
davecheneyjcw4: axw correct04:57
davecheneythose arguments should go at the end of the command line04:57
jam1axw: yeah, so did I for a *long* time.04:58
davecheneythere is no reason gocheck couldn't adjust gocheck.v based on the test.v value which is better handled by the go tool04:58
davecheneydoes anyone have experience with writing gocheck checkers ?05:08
davecheneythis is doing my head in05:08
jam1davecheney: I've done some05:11
davecheneyjam1: can you explain how the Check siganture works ?05:12
davecheneyCheck(params []interface{}, names []string) (result bool, error string)05:12
davecheneynames appears unused05:12
davecheneyerror is a string05:12
jam1if you are writing a checker, you should generally not put anything into error05:12
davecheneyresult appears to indicate succes or failure05:12
davecheneyjam1: why not ?05:12
jam1because it indicates there is actually something you cannot test05:12
jam1davecheney: if you return an error it gets reported immediately, and breaks things like Not()05:13
jam1because Not(error) is still error05:13
davecheneyok05:13
jam1while Not(resultFalse) is still true05:13
davecheneythis all started because05:13
jam1s/still/05:13
jam1davecheney: so IIRC, names can be used as an output variable, but you don't have to do anything with it as input05:14
davecheneyhttp://paste.ubuntu.com/7525844/05:14
davecheneybut names is passed as a value05:14
davecheneythere is no way I could append to names inside the function05:14
davecheneyand have that visible to the caller05:14
jam1davecheney: you may not be able to append, but I think you can change in place05:16
davecheneytrue05:16
davecheneyok05:16
jam1I believe that is how I made slightly nicer error messages by replacing params in place (so when you get an array of 100 things, you can report the 1 that is actually wrong, and hide the rest)05:17
davecheneyok05:17
davecheneythat helps me understand what is going on05:18
* jam1 really dislikes the in/out parameters, but that seems to be how gocheck works05:18
davecheneygo check is ok as an assertion framework, but writing checkers is ass backwards05:18
jam1I was trying to figure out how to give nicer errors, but I can't just return something into "error" because that is a forceful failure05:18
jam1davecheney: fwiw, I think the actual failure from your paste is that the LogLevel is wrong, but it isn't being shown05:19
davecheneychecked that05:19
davecheney[{"INFO" "audit" "audit_test.go" ')' "2014-05-27 11:52:08.804353055 +1000 EST" "user-agnus: donut eaten, 7 donut(s) remain"}]05:20
davecheneyexpected05:20
davecheneyobtained05:20
davecheney["INFO user-agnus: donut eaten, 7 donut(s) remain"]05:20
jam1ah, ffs, the match is a regex05:20
jam1and (s) doesn't match \(s\)05:20
davecheneyif you excuse me05:20
davecheneyi have to go outside and shout05:20
davecheneywell, on the positive side05:22
davecheneyi've got a branch which improves the coverage of the LogMatches to 100%05:22
* jam1 wonders if we should have a fallback "regex did not match, but exact match did" error message.05:22
jam1:)05:22
fwereadeaxw, hey, re https://launchpad.net/bugs/121557905:36
_mup_Bug #1215579: Address changes should be propagated to relations <addressability> <reliability> <juju-core:In Progress by axwalk> <https://launchpad.net/bugs/1215579>05:36
axwfwereade: yo05:36
fwereadeaxw, please let me know what you're planning to do there05:36
axwfwereade: just trying to figure it out right now...05:36
axwfwereade: much bigger than I realised :)05:36
fwereadeaxw, indeed, it's in a positive thicket of subtleties05:36
axwfwereade: I was thinking a new worker, relationuniter, which watches for address changes on a machine and then updates the private-address setting for all relation units on that machine05:37
fwereadeaxw, the main issues are: (1) we have to have a hook for it, otherwise units can't respond to their *own* changes of address05:37
fwereadeaxw, -10005:37
fwereadeaxw, a worker that keeps an eye on address changes is one thing05:38
fwereadeaxw, fucking around with relations outside the purview of the uniter will totally fuck us05:38
axwok05:38
fwereadeaxw, one issue is that they use the much-maligned state.Settings, which is only safe for writes from a single client05:39
fwereadeaxw, and that clientis the uniter05:39
axwfwereade: yeah, I modified to do be safe in that regard05:39
axwwith a loop that checks for concurrent changes... but I hadn't considered units changing the address themselves05:40
fwereadeaxw, but even if that were fixed, the units (1) have to know what their addresses are and (2) have to be able to reject private addresses they don't like05:40
fwereadeaxw, and this only becomes more critical as we build up the networking model05:41
fwereadeaxw, (re (2): proxy charms)05:41
axwok. I think I lack enough knowledge in this area that I'm going to be dangerous. I'm going to unassign myself for now05:42
fwereadeaxw, well, it demands care and forethought, but I wasn't trying to actively scare you off...05:42
axwI will keep looking at it, I just don't want anyone to get their hopes up :)05:42
fwereadeaxw, remind me about what you did to settings?05:42
fwereadeniemeyer, morning, welcome to malta, sorry I haven't said hi before now05:43
niemeyerfwereade: Heya, thanks!05:43
axwfwereade: nothing in the tree yet. I made a RelationUnit.UpdateSettings method; extracted the operation building from Settings.Write (into WriteOps), and had UpdateSettings do that with a assertUnchanged in a loop05:44
jimmiebtlrshould lbox propose should create a code review on rietveld?05:44
axwjimmiebtlr: yes, that's its purpose05:45
jimmiebtlrok, I got the error "User does not have sufficient permissions to edit the bug task milestone." and no prompt for credentials for it05:45
fwereadeaxw, ah, excellent -- there are other problems with settings, too, and if we can find an excuse to address them we should do so (because at last, with the db not exposed, we can do so sanely)05:46
axwjimmiebtlr: try without -bug05:46
jimmiebtlrok05:46
fwereadeaxw, are you free for a hangout in a few minutes?05:47
axwfwereade: sure, let me just make a cup of tea05:47
jimmiebtlraxw:  That did it, thanks05:51
axwjimmiebtlr: no worries. if you go to the bug, you can associate the branch manually (top right, "Link to a related branch")05:53
axwfwereade: ready when you are, shall I start one?05:53
fwereadeaxw, please05:54
davecheneyjimmiebtlr: how come your merge proposals don't have code review links ?05:55
jimmiebtlrWhen I do propose with -bug set, it gives permissions error and never seems to make it to the rietveld creation05:57
jimmiebtlrI think I have to first do it without setting bug, then go into launchpad and set it through the gui.05:58
jimmiebtlrSorry about the number of emails, trying to figure the tools out05:58
jcw4fwereade: https://codereview.appspot.com/92630043/ -- updated to address your feedback06:17
jcw4fwereade: should I lbox propose again, or wait til you've reviewed the code?06:17
jcw4fwereade: I suppose I have to lbox propose again to pick up the newly edited changes...06:20
fwereadejcw4, lbox propose again please06:20
jcw4fwereade: incoming....06:21
* jcw4 is EOD... cya later06:27
=== Ursinha-afk is now known as Ursinha
jam1fwereade: I've put together a patch to change Login to accept and return EnvironTags, and to have those values saved in the cache and passed in on demand.06:42
jam1It does not do it with a v2 of the Login api06:42
jam1because I haven't gotten to the client side of that stuff yet, and because my other stuff hasn't landed anyway.06:42
jam1You're welcome to say "I only want this in a v2" and it goes into WIP until I can do it.06:42
jam1but I figure the code as it stands is reasonable to review.06:43
fwereadejam1, cheers06:44
jam1fwereade: https://codereview.appspot.com/10176004606:49
fwereadejcw4, btw, if you have draft comments waiting when you lbox propose again, it will publish them alongside the PTAL message06:51
jam1fwereade: so the post is up, an email sent to the CI guys, and I'm off for about 2 hours to go be entertained by what my son is doing in school. bbiab06:56
fwereadejam1, take care, have fun06:56
voidspacemorning all08:14
fwereadevoidspace, heyhey08:15
jam1fwereade: thanks for the review08:33
jam1fwereade: one other thing I wanted to run by you, while working on this, I discovered that only JujuConnSuite and cmd-restore use NewAPIConn, and I'd like to kill it with fire08:34
jam1it is the one that returns a Conn that has both a State and an Environ08:34
jam1but nobody actually needs that, and JujuConnSuite does bad things with it.08:34
jam1(JujuConnSuite.APIInfo() is implemented in terms of APIConn.Environ.StateInfo(), for examples of bad behavior)08:35
fwereadejam1, awesome! has long been an ambition of mine, glad we're at the point we can do it08:46
fwereadejam1, +10008:46
jam1great, I thought you felt that way, and it got in the way of something I wanted to do :)08:47
fwereadejam1, https://codereview.appspot.com/100460045/ LGTM09:03
jam1fwereade: thanks for getting to it, I know its a bit big09:03
fwereadejam1, np; need to pop out for a while myself; would you take a look at casey's https://codereview.appspot.com/100400043/ if you get a moment please? I feel like I've lost perspective on it09:04
jam1k09:04
axwfwereade: sorry, won't be able to chat about relation address things again today. Tomorrow hopefully, if that suits you09:33
* axw bbl09:34
voidspaceso bzr blame says the code I'm interesting in was committed by Andrew in revision 263609:34
voidspacebut launchpad (juju-core) says that revision 2636 was by nate and doesn't contain this code09:34
voidspacewill bzr blame give the revision from the "original branch" rather than the revision it was merged onto trunk?09:35
mgzvoidspace: are you sure it's not 2636.something.something?09:35
voidspacemgz: it's 2636.4.209:35
voidspacemgz: what does the 4.2 indicate?09:36
voidspacemgz: "bzr help blame" says "revision, author and date"09:37
mgzokay, so then what you want is `bzr log -c mainline:2636.4.2`09:37
voidspacemgz: ah, cool09:37
voidspacemgz: thanks09:37
voidspacethat tells me what I need09:37
mgzthe dotted revnos are changes off the mainline, (Andrew started from Nate's revision)09:37
voidspacemgz: ah09:37
voidspacenow I need to see if I can find the original MP on launchpad, and any tickets closed as a result09:39
voidspacebut the commit message from "bzr log" has a link to the CL, which is handy09:39
mgzvoidspace: should be linked from the... right09:39
voidspacethe CL has a link to the MP09:40
voidspacegets me a step closer :-)09:40
voidspacefwereade: I tested the "immutable syslog port" with local provider and it works fine09:42
voidspacefwereade: running a test against a canonistack HA deployment before I merge, just for sanity09:43
voidspacewallyworld_: ping, you still around?09:48
bloodearnestheya all, anyone got any more details on LP #1307434 ? We're hitting the same issue using mgo in a different project10:03
_mup_Bug #1307434: talking to mongo can fail with "TCP i/o timeout" <cloud-installer> <performance> <juju-core:Triaged> <https://launchpad.net/bugs/1307434>10:03
wallyworld_voidspace: i'm here, but eating dinner, can ping you soon10:08
rogpeppejam: ping10:11
jam1rogpeppe: pong10:11
voidspacewallyworld_: cool, thanks :-)10:11
rogpeppejam1: i was just looking at this https://codereview.appspot.com/101760046/ and a slightly different approach occurred to me, which i thought i might run by you10:12
rogpeppejam: because i've been thinking about multi-tenant state servers10:14
rogpeppejam1: specifically, i was wondering about, rather than specifying the environment in login, we could specify it in the URL for the API10:15
jam1so we could, but we don't currently connect to a URL in as many letters. The information we store is a host:port combination, which we turn into a URL10:15
jam1so yes, with a but10:15
rogpeppejam1: that means that *all* the URLs for an environment (including charm putting, logs, etc) can be accessed with respect to an environment10:16
rogpeppejam1: yeah, you'd need to know the environment uuid when you call api.Open10:16
rogpeppejam1: but you probably want that anyway (because nothing much calls Login explicitly)10:17
jam1which I am migrating towards, but all existing .jenv files, etc don't know the UUID10:17
jam1so I think at the least we still need to get that data into the files10:17
rogpeppejam1: you're migrating towards calling Login explicitly?10:18
jam1no, towards passing EnvironTag/UUID into api.Open via the api.Info struct10:19
=== vladk|offline is now known as vladk
rogpeppejam1: that sounds great10:19
rogpeppejam1: i guess the question is just what happens under the hood in api.Open10:19
jam1*today* it is easier to do it compatibly via Login, if only because I've already written that code :)10:20
jam1but also, changing all the URLs we use is going to involve a whole different layer (the HTTP mux)10:20
rogpeppejam1: yeah, it will (but it's work we do want to do some time anyway)10:21
jam1but I also think what I've done doesn't preclude us from doing that in the future.10:21
rogpeppejam1: i guess it doesn't matter if we pass the UUID in Login too10:21
rogpeppejam1: when the UUID is in the url, it will just be a tiny bit of extra validation10:21
rogpeppejam1: i guess if we're explicit that the UUID in Login is *only* for validation, not for selection, then we'll be ok for backward compatibility too10:23
rogpeppejam1: BTW, do we now generate the UUID and store it in the .jenv file at bootstrap time?10:25
jam1not yet10:25
wallyworld_voidspace: back now. late dinner tonight after soccer. what can i do you for?10:27
mgzwallyworld_: hi!10:30
wallyworld_heya10:30
voidspacewallyworld_: hey10:30
voidspacewallyworld_: so I'd like to re-enable mongo replica sets for local provider10:30
wallyworld_great :-)10:30
voidspacewallyworld_: apparently there was a problem with them previously, which I'm led to believe you reported10:31
wallyworld_i can test since it broke for me10:31
voidspacewallyworld_: I'm struggling to find the issue though10:31
wallyworld_but10:31
voidspacewe obviously need to work out why it was broken for you and fix it10:31
wallyworld_i upgraded my kernel today and that broke cgroups and hence local :-(10:31
voidspacehah10:31
wallyworld_i'll need to downgrade10:31
voidspaceouch10:32
wallyworld_it broke for me because mongo just didn't start10:32
wallyworld_can't recall the exact error10:32
wallyworld_but the upstart job failed to start mongo with --repl or whatever the ption was10:32
wallyworld_but i can just test it again to see if it works10:33
wallyworld_i think one other person also had the issue10:33
wallyworld_not sure who now10:33
voidspacewallyworld_: ok, thanks10:34
wallyworld_voidspace: i can do that tomorrow after i downgrade my kernel, is that ok?10:35
voidspacewallyworld_: I'll create a branch with HA always on (just delete the code that switches it off) and you can try it10:35
voidspacewallyworld_: tomorrow is fine, thanks10:35
wallyworld_i have some other stuff i need to try and get done tonight10:35
voidspacecool10:35
wallyworld_i'll let you know how i go10:35
=== vladk is now known as vladk|offline
voidspacewallyworld_: I'll push a branch and email you a link10:38
voidspacewallyworld_: tomorrow is fine10:39
wallyworld_ok10:39
wallyworld_ta10:39
=== Ursinha is now known as Ursinha-afk
dimiternjam1, fwereade, standup?10:49
=== vladk|offline is now known as vladk
jam1dimitern: sorry about that, brt10:50
wwitzel3hello10:51
wwitzel3need a reboot, brb10:51
fwereadedimitern, with you in a mo10:52
fwereadedimitern, don't wait10:52
wallyworld_mgz: how's the github stuff? did you get to talk to rick or you don't need to now?10:54
mgzwallyworld_: I didn't need anything from him yesterday, will probably bug both him and curtis today about the remaining small things10:55
wallyworld_ok10:55
wallyworld_mgz: if you talk to curtis make sure he is ok with the timeframe or else we'll need to delay10:56
mgzyeah10:56
wallyworld_mgz: you on track to get the contributing doc finished up today (with everything else you have to do)?11:00
mgzyup11:00
wallyworld_great :-)11:00
mgzthanks for the comments from you and andrew11:00
wallyworld_np, hope they helped11:00
wallyworld_i'd like to email it out soon so will do so when you finalise it11:01
perrito666morning11:05
=== vladk is now known as vladk|offline
=== vladk|offline is now known as vladk
wwitzel3perrito666: morning11:09
voidspaceperrito666: morning11:09
voidspacewwitzel3: morning11:09
=== Ursinha-afk is now known as Ursinha
dimiternfwereade, jam1, vladk - the goamz branch I'd love a review on https://codereview.appspot.com/10078004811:47
=== vladk is now known as vladk|offline
=== vladk|offline is now known as vladk
voidspaceright, lunch time12:08
* voidspace lurches12:08
perrito666voidspace: uh, thats true, medicine time, bbl12:09
fwereadejam1, replied to bug instead of you, sorry12:24
=== TheMue is now known as TheMue_AFK
dimiternniemeyer, hey12:27
niemeyerdimitern: Heya12:27
dimiternniemeyer, I have another small goamz branch, if you can take a look https://codereview.appspot.com/10078004812:27
niemeyerfwereade: When are you coming?12:28
niemeyerdimitern: Cool12:28
fwereadeniemeyer, heh, haven't really figured it out yet -- I was thinking mid-afternoon on wed, thu, or fri would be pretty convenient, though, because I can get a lift most of the way there12:28
fwereadeniemeyer, do you have something particular in mind that I should be at?12:29
fwereadeniemeyer, because, you know, there's nothing stopping me at any other time12:29
fwereadeniemeyer, (well, I have a washing machine being delivered in a couple of hours, so today ain't great, but still)12:29
niemeyerfwereade: Nope, nothing specific.. might just be nice to take the chance that 100+ co-workers are around to interact a bit12:30
fwereadeniemeyer, yeah, I just don't want to show up and end up hanging around being useless ;)12:31
fwereadeniemeyer, I'd been thinking at least that I could come down and see some people in the evening one (more?) of those days12:32
perrito666niemeyer: well you are trying to make a geek choose between a new gadget and 100+ people... that is unfair12:32
fwereadeniemeyer, how are your plans looking?12:32
niemeyerfwereade: I would take the chance to be here most of the time, to be honest, even if you're just working on your usual tasks during meetings12:32
niemeyerfwereade: There's open space to hack, and just being around to talk to people over breaks is worth it12:33
niemeyerfwereade: That's how I would feel if people would so close to me, either way.. :)12:33
niemeyers/would so/were so/12:33
fwereadeniemeyer, that's very true, I guess I'd kinda assumed that hacking space might not be so available12:34
hazmatmgz, re gh please don't transfer history how gui did it (squashing branch commits into mainline history)12:38
mgzhazmat: yeah, we'll keep all the commits, even though git doesn't handle them quite as neatly12:39
hazmatmgz, well more to the point.. goal would be not polluting main branch history with every branch's individual commit as linear line.12:40
hazmatwhich is what gui ended up doing12:41
mgzhazmat: ...that sounds like the opposite of what I understood your first comment as12:41
hazmatmgz, squashing was a bad word choice, s/polluting would have been better12:42
hazmatmgz, ie. doing a git log on trunk should see merge commit messages, not every branches individual commit messages.l12:43
mgzhazmat: it may be something to raise on the mailing list then, the current planned import does no squashing12:43
hazmatmgz, hmm.. actually i think i might be off track here.. git log --oneline --graph shows what i would expect, just the default git log shows minor commits on feature branches by default12:46
hazmatyeah.. git log --oneline --first-parent is the equivalent of bzr log12:46
hazmater. bzr log --line12:46
mgzyeah, it's an issue with the git tooling12:47
mgzgit itself does the dag okay12:47
jamdimitern: https://codereview.appspot.com/100780048/ reviewed12:56
jammgz: just that most git tools think first parent isn't relevant and sort by sha1 for ordering rather than the actual recorded merge parent ordering.12:57
dimiternjam, thanks!13:09
=== vladk is now known as vladk|offline
dimiternniemeyer, I've updated the branch after fwereade and jam reviewed it, I just need your review :) https://codereview.appspot.com/100780048/13:36
niemeyerdimitern: Okay, I cannot promise to be timely there13:37
dimiternniemeyer, ok, when you can, thanks13:37
niemeyerdimitern: Or just go ahead and merge it.. I trust John and William13:38
dimiternniemeyer, thanks!13:41
dimiternniemeyer, it's just for testing, no public-facing logic has changed13:42
niemeyerdimitern: Super, thank you13:43
jamdimitern: I think you can simplify the "known" changes if you go back to a bool map.13:45
jamsince you can just do && idMap[id]13:45
jamsort of stuff13:45
alexisbwelcome gsamfira !13:45
gsamfirahey alexisb :)13:46
dimiternjam, oh, sorry I forgot about this13:46
dimiternjam, but I'll fix it next time i need to make changes, it's not a big deal13:47
jam1cmars: I reviewed https://codereview.appspot.com/100400043/13:54
wwitzel3perrito666: where'd you go? :)13:58
cmarsthanks jam1. I've also become concerned over compatibility issues with clients -- including older juju clients. Having second thoughts about making ecdsa the default.13:58
jamcmars: for juju clients, we only really need to be compat with 1.1813:58
cmarsjam1, i'm considering leaving the support for switching to ecdsa in this proposal, issuing separate certs for the state server & mongo, but leaving the default RSA13:59
jamcmars: I really like the idea of splitting out the certs, as sharing the certs has always bothered me13:59
jcw4fwereade: "Checking the logs would be ideal" ... how does one check the logs in a test?14:00
jamjcw4: you can look for test that use LogMatches14:01
jcw4jam: tx!14:01
jcastrohttp://askubuntu.com/questions/472849/destroy-a-juju-service-and-also-its-associated-machine14:05
jcastrowould it be a good idea to have a --destroy-the-machine-too flag for destroy-service?14:05
fwereadejcastro, it surely would, even as default behaviour, but I can't remember whether we have it scheduled for this cycle14:06
jcastroyeah I remember talking about it14:06
fwereadejam, do you recall what heading we had it under?14:06
jcastroshould I file a bug?14:06
fwereadejam, I have a feeling it might be one of the tanzanite ones14:06
fwereadejcastro, if you can't find one, yeah, go for it14:06
jcastrohttps://bugs.launchpad.net/juju-core/+bug/129903414:08
_mup_Bug #1299034: garbage collect/remove destroyed service machines by default <destroy-service> <improvement> <juju-core:Triaged> <https://launchpad.net/bugs/1299034>14:08
perrito666natefinch: wwitzel3 voidspace heh, sorry that seemed easier to explain on code that over the phone :)14:23
perrito666and in that process I found out the solution, :)14:25
natefinchawesome14:25
perrito666happens, I usually explain things to my dog to do this14:25
perrito666but he rarely answers14:26
=== vladk|offline is now known as vladk
natefinchfwereade: you around for the ensure availability talk?15:04
voidspacegah, "syslog immutable" branch test failures15:06
voidspaceone spurious, one at least looks genuine15:06
voidspacere-running locally15:06
voidspacejust one15:06
voidspaceI really thought I'd run all tests15:06
voidspace*sigh*15:06
fwereadenatefinch, tasdomas: sorry, drama, guys came t deliver washing machine, decided to try to do it from the road without a permit, much excitement15:08
fwereadenatefinch, tasdomas: joining15:09
victor13hola jodedores15:28
perrito666now that was a bit rude15:34
perrito666and poorly translated15:34
natefinchperrito666: what is jodedores?15:45
natefinchgoogle translate is failing15:45
perrito666a rather literal translation of f****ers15:45
natefinchhaha15:45
=== psivaa is now known as psivaa-sprint
=== TheMue_AFK is now known as TheMue
=== hatch__ is now known as hatch
=== vladk is now known as vladk|offline
=== vladk|offline is now known as vladk
voidspacejuju seems to have got itself into a tizzy and I can't use the local provider16:23
voidspace"ERROR cannot use 37017 as state port, already in use"16:23
voidspacenetstat doesn't show anything using that port though16:23
voidspacerebooting to fix...16:23
voidspaceyay that seems to have fixed it16:27
natefinchvoidspace: yeah, that happens to me once in a while16:28
voidspaceheh16:28
=== Ursinha is now known as Ursinha-afk
voidspacenatefinch: making syslog-port immutable has landed (I had to fix a failing test first)16:41
voidspacenatefinch: and I've created a branch with replica set enable for local provider, for wallyworld_ to try out16:41
voidspacenatefinch: so next is looking at replica sets for tests16:41
voidspacenatefinch: you said there was *one place* to make the change, can you easily find out where that is or should I go spelunking?16:42
voidspacenatefinch: MgoInstance run method presumably16:46
voidspacewhich is what starts mongo for the MgoSuite16:47
voidspacehmmm... just adding "--replSet juju" is not looking *too* promising16:50
voidspacetests appear to have hung16:50
voidspacewe'll see if they timeout in ten minutes (did we ever change that timeout?)16:51
voidspacePanic: no reachable servers16:51
voidspace*sigh*16:51
voidspacetwo minute timeout16:52
voidspacefor two failures16:52
voidspaceso maybe one minute16:52
voidspace23 passed though16:52
=== vladk is now known as vladk|offline
=== vladk|offline is now known as vladk
=== vladk is now known as vladk|offline
jcw4fwereade: https://codereview.appspot.com/92630043/17:59
jcw4mgz: I should be pinging you on these too right? ^^18:00
sinzuinatefinch, do you have a minute to review https://codereview.appspot.com/9863004418:21
sinzui^ perrito66618:23
=== vladk|offline is now known as vladk
=== vladk is now known as vladk|offline
sebas5384hey! :)18:50
sebas5384there's any plans for hardware constraints work for juju-local (lxc) ?18:51
sebas5384since cgroups help you with that already18:51
natefinchI'm not sure what you mean about hardware constraints on local.  Isn't it, by definition, always running on your local hardware?18:52
natefinchsinzui: I can review now18:52
natefinchheh, perrito666 beat me18:53
sebas5384natefinch: linux containers can be constrained, like cpu, mem, etc..18:53
sebas5384https://bugs.launchpad.net/juju-core/+bug/124278318:53
_mup_Bug #1242783: containers should use constraints to configure cgroups/kvm values <constraints> <local-provider> <juju-core:Triaged> <https://launchpad.net/bugs/1242783>18:53
perrito666natefinch: I am fast :p18:53
natefinchsebas5384: ahh, hmm, interesting... that never occurred to me18:54
sebas5384natefinch: that feature would be awesome!18:54
sebas5384:)18:54
natefinchsebas5384: juju is open source - write it ;)18:55
sebas5384since now we can deploy an ubuntu charm, or mysql, etc...18:55
sebas5384heheh http://sorisomail.com/img/127989758237.jpg18:55
perrito666natefinch: wanted to contribute something today before my cold kills me18:56
sebas5384natefinch: there's some guide to newbies to contribute?18:56
sebas5384i would like to at least see if I can contribute :P18:56
natefinchsebas5384: http://bazaar.launchpad.net/~go-bot/juju-core/trunk/view/head:/CONTRIBUTING19:00
natefinchnot really a newbie guide, just a guide.  We should probably work up something a little easier to swallow19:00
perrito666there are more specific docs in the /doc folder19:01
sebas5384natefinch: yeah that would be nice, thanks, i will read it :)19:02
alexisbnatefinch, ping19:20
natefinchalexisb: hey hey19:24
alexisbdo you remember who on the core team was assigned to shadow hazmat in the TOSCA effort?19:30
alexisbwas it you?19:30
alexisbnatefinch, ^^^19:30
natefinchalexisb: I remember, it was me :)19:30
alexisbok I am going invite you to tomorrow morning call evne though I think it is a bad time for you19:31
natefinchalexisb: ok19:32
jcw4sebas5384: feel free to ping bodie_ or I with questions too.. we recently started contributing so we may have some fresh memories of any issues19:38
natefinchjcw4: thanks, that's a huge help... for people who have been doing this for a long time, we may have forgotten a lot of the setup steps we now take for granted19:38
natefinchalexisb: I guess I'll go read up on TOSCA then ;)19:39
jcw4the *right* thing to do would be to capture each question we get and make an FAQ19:39
natefinchjcw4: make FAQ.txt and slap it in the /doc directory, or even in the root directory for that matter.19:41
jcw4natefinch: will do19:41
natefinchjcw4: put it in the root directory, then make the first FAQ "where is the dev documentation?" and point to CONTRIBUTING and /doc  :)19:42
jcw4natefinch: lol!19:42
jcw4natefinch: +119:42
jcw4okay sebas5384 ... I'm ready for the questions.. :)19:42
sebas5384nice!!! jcw4 thank you!19:43
jcw4sebas5384: :)19:43
sebas5384jcw4: I started a recognition field to work in the bug19:43
sebas5384http://bazaar.launchpad.net/~go-bot/juju-core/trunk/view/head:/provider/local/environ.go#L31419:43
sebas5384so i found this already19:43
perrito666rogpeppe: are you around by any chance?19:46
jcw4sebas5384: looks like constraints for lcx containers are lower priority now though (well medium instead of high)19:46
sebas5384yeah jcw4 but i'm planning to use it19:46
sebas5384because i'm going with lxc containers way :)19:47
jcw4sebas5384: cool, I'm interested to see how that goes19:47
sebas5384yeah! and will be my first contribute :)19:47
sebas5384jcw4: whats your environment for developing?19:48
jcw4trusty19:48
jcw4vim19:48
sebas5384bzr hehe19:48
sebas5384never used19:48
jcw4sebas5384: apparrently if you wait a week you'll be able to use git19:49
jcw4sebas5384: when I started I was gung-ho to move to github (still favour that)19:49
sebas5384they are going to move to git?19:49
jcw4sebas5384: but I've gotten to like some things about bzr and especially lbox19:49
jcw4sebas5384: I believe so19:49
sebas5384jcw4: sweet!19:50
natefinchyep... moving to github thursday evening, I believe19:50
sebas5384yeah i imagine, every tool have's some features that the other one doesn't19:50
sebas5384yeah!! \o/19:50
sebas5384thats nice19:50
jcw4https://lists.ubuntu.com/archives/juju-dev/2014-May/002459.html19:50
sebas5384juju-gui is over there already19:50
jcw4sebas5384: natefinch next FAQ : mailing lists...19:51
jcw4Although that's in CONTRIBUTING already I think19:51
jcw4nope...19:52
sebas5384didn't see about that19:52
* jcw4 rubs his hands and chuckles... 19:52
sebas5384jcw4: i have to build a fresh install of trusty in a vbox19:53
sebas5384using mac here :(19:54
jcw4I was able to do some things on a mac directly, but yeah ubuntu is certainly the main dev env19:54
jcw4sebas5384: if you don't mind paying a little bit, digital ocean has decent prices on vm's, and I was doing quite well on an AWS $100/month vm19:56
jcw4sebas5384: but I ended up paving over a laptop of mine with Trusty19:57
hazmatnatefinch, ping if you have questions re tosca.. i'm diving back in myself..20:05
natefinchhazmat: thanks.  I looked at the website for like a minute last time, so... basically just need to read more in-depth20:07
natefinchsebas5384: the tests are kind of the major problem with developing on a mac.  most will run, but I'm sure a bunch will fail.  And definitely the local provider won't work on OSX20:09
perrito666sebas5384: well, excepting for the compile time, which can be a bit dense, working on a VM works quite well in mac20:11
hazmatnatefinch, you want this https://www.oasis-open.org/committees/download.php/52954/TOSCA-Simple-Profile-YAML-v1.0-wd02-Rev-05.docx20:12
hazmatnatefinch, just go to the docs section from the home page.. https://www.oasis-open.org/committees/documents.php?wg_abbrev=tosca20:12
* perrito666 did the smallest change and broke a lot... such is my luck20:13
sebas5384perrito666: yeah! i will bootup a vbox with vagrant20:13
sinzuinatefinch, is the landing bot ill?20:13
sebas5384i'm doing that right now20:13
natefinchsinzui: uh, no idea20:15
natefinch hazmat thanks20:16
hazmatnatefinch, how's your python?20:16
hazmatnatefinch, most of the code for this (and all of ostack bits) is in python.. there are two repos of interest20:18
natefinchhazmat: my python is ok.  I'm a little rusty, and never wrote a ton of it, but it's generally pretty easy to read as long as they're not trying to be too crazy20:19
hazmatmy take on the spec is https://github.com/kapilt/juju-tosca  its doing some auto gen of types/classes.  some of the other tosca guys have been working on this https://github.com/spzala/heat-translator20:19
jcw4natefinch: FAQ: https://codereview.appspot.com/9865004320:25
natefinchI love that the name of the thing is "OASIS Tosca YAML Simple Profile 1.0"20:25
natefinchit sounds so.... Standards-y20:25
jcw4especially the word Simple in a six word title20:26
natefinchRight?  Especially because Tosca is an acronym already20:26
natefinchOASIS Topology and Orchestration Specification for Cloud Applications YAML Simple Profile 1.020:26
jcw4haha, and OASIS too presumably?20:27
jcw4and YAML20:27
natefinchOrganization for the Advancement of Structured Information Standards20:28
alexisbalrighty all I am off for the afternoon doing community work, be back online later this evening to check in20:28
=== alexisb is now known as alexisb_bbl
natefinchalexisb: have fun20:28
* jcw4 leaves for a couple hours20:34
bodie_jcw4, you around?20:53
bodie_if you're not too busy, I could use a second brain for a minute20:54
natefinchdoes that work? 'Cause I need a second brain like... always20:56
perrito666natefinch: sure, amazon ech20:57
perrito666you just add more brains20:57
bodie_it's kind of like networked storage20:57
bodie_you need good protocols and error handling20:58
bodie_you can usually assume things might not make their way from sender to receiver in one piece20:58
bodie_etc20:58
natefinchheh20:58
sebas5384hehe21:01
sebas5384BOA - brain oriented architecture21:01
sebas5384and like always, as a service ... xD21:01
perrito666the usage of addr:port as a str instead of stored as two separated entities has made my life difficult many times these days21:05
waiganifwereade: --define ?21:07
perrito666sweet, fwereade now accepts flags?21:08
waiganilol21:08
waiganiI wonder what the output would be21:08
bodie_fwereade --help21:12
bodie_lol21:12
menn0I think he also takes --review and --architect-something21:19
bodie_heh21:20
wallyworld_sinzui: hi, did you have time for a quick catchup?21:27
sinzuiI do21:27
wallyworld_i'll start a hangout21:27
wallyworld_https://plus.google.com/hangouts/_/gwsrc7uen7yzc2m4y5nxqxyhnea?hl=en21:28
thumpermorning folks21:30
thumpersinzui: morning21:39
sinzuihi thumper. my fix for the win installer is playing now. I hope to see a pass for all juju http://juju-ci.vapour.ws:8080/21:41
thumpersinzui: so we are good?21:41
thumpersinzui: I also sent a reply to the list21:41
thumpersinzui: and then noticed that you had already committed a fix for the win installer21:42
sinzuithumper, probably. Everything That needed to know about the version appears to. I just need to see a pass for everything21:42
thumpersinzui: I think we should have a note in the version.go file to say "if you change this, please remember the windows installer file"21:42
sinzuithumper, or a test.21:42
thumpera test would be good21:42
sinzuiI learned from natefinch that updating one always mean updating the other :). my first two releases  failed bcaue of that21:43
mfoordsigning off (not been here for a while but forget to say goodnight)21:49
mfoordso goodnight...21:49
fwereadewaigani, thumper, hey, I'm here for a bit21:53
waiganifwereade: hello21:53
fwereadewaigani, thumper, have I been telling you to do stupid things?21:53
waiganifwereade: I was wondering what you thought of $ juju switch --define21:53
thumperfwereade: I have 7 minutes before my call with cmars21:54
thumperfwereade: can we hangout?21:54
fwereadewaigani, ah-- hmm, I'm not sure anyone's *defining* anything21:54
fwereadethumper, sure21:54
waiganifwereade: okay, worth a shot21:54
thumper--define?21:54
waiganithumper: fwereade does not like --env-info21:55
thumperwhat's --env-info?21:55
waiganithe flag to dump all the info on the environ21:55
waigani$ juju switch --env-info21:55
waiganithen it gives you user, endpoints etc21:56
waiganiits all in my branch21:56
waiganiANYWAY21:56
waiganijust looking for a better name21:56
sinzuithumper, juju doesn't support -beta1 Every deploy tests fails21:58
sinzuihttp://juju-ci.vapour.ws:8080/job/aws-deploy/1244/console21:58
sinzui^ one example21:58
thumperwhat?21:58
* thumper looks21:59
* thumper wonders why tests didn't catch this21:59
thumpersinzui: shall we roll back the version stuff? and I'll take more of a look at it when I have some time22:00
sinzuithumper, might be best if you don't see an obvious fix22:00
thumpersinzui: I don't have an obvious fix22:01
thumperI say rollback22:01
sinzuithumper, hold22:01
sinzuithumper, in that log, the actual failure is 1.18 attempting to destroy the an env22:02
sinzuithumper, never mind. that succeed, as did the proper clean up 1.20-beta1 cannot bootstrap itself from stream22:03
sinzuithumper, lets roll back22:03
sinzuiThis will be a test that my changes properly support the old version22:03
thumpercmars: around?22:06
cmarsthumper, hey22:07
cmarsthumper, i'm in the hangout22:07
thumpercoming22:08
thumpercmars: I can hear you22:08
thumpervolume up?\22:08
waiganidavecheney, thumper: menn0 and I did our stand-up. So the next call can just focus on tags discussion if you like.23:28
davecheneywaigani: cool23:28
* davecheney has many comments23:28
=== thumper is now known as thumper-otp
waiganimenn0: can you send me that email please?23:49
menn0waigani: done23:52
waiganimenn0: thank you :)23:52

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