/srv/irclogs.ubuntu.com/2012/03/26/#juju-dev.txt

=== TheMue_ is now known as TheMue
wrtpTheMue: morning!08:25
TheMuewrtp: moin08:26
wrtpTheMue: amazingly gorgeous weather here. yesterday we had sunshine all day and 19 degrees.08:26
wrtpTheMue: same again today, but my computer display doesn't work well in the sun :-(08:26
TheMuewrtp: we had a nice weekend too, but right now it's fog and not yet really warm08:27
TheMuewrtp: i've got two places to sit outide, one works pretty well with notebook. the other one needs higher temperatures, but i'll test it then.08:28
TheMuewrtp: btw, i've combined our discussion results into a watcher package parallel to the presence one and it's pretty simple. i'm now adding first test cases for content and children to demonstrate how it works. but it's neat small.08:52
wrtpTheMue: small is nice :-)08:52
wrtpTheMue: looking forward to seeing it08:52
TheMuewrtp: your ideas have been helpful08:53
wrtpTheMue: i'm glad, thanks. i try to be :-)08:54
=== asavu_ is now known as asavu
fwereade_wrtp, TheMue: kinda long shot, but do you know why we *insist* on running ebs-backed instances?09:51
fwereade_wrtp, TheMue: sensible default, but...09:51
wrtpfwereade_: i've wondered that in the past09:52
wrtpfwereade_: but i've no idea, sorry09:52
TheMuefwereade_: sorry, don't kknow09:52
fwereade_cheers guys09:52
fwereade_wrtp, TheMue: another: do you know whether the HVM image requirement is necessarily intrinsic to an instance-type? instinct says no, but I don't really know much about this stuff09:56
wrtpfwereade_: no idea again, sorry.09:57
wrtpfwereade_: i don't know any of the rationale for any of the image choice stuff - i just copied by rote.09:57
fwereade_wrtp, sorry to say it's all being rewritten anyway :p09:57
wrtpfwereade_: that's fine, it's not much code in go09:57
TheMuefwereade_: i'm still to young in the project and too focussed on state to know many of the rationales09:59
fwereade_TheMue, no worries, but that won;t stop me asking questions just in case :;)09:59
TheMuefwereade_: yep ;)10:00
TheMuelunchtime10:25
wrtpfwereade_: http://paste.ubuntu.com/900253/10:50
wrtp:-)10:50
wrtpfwereade_: first actual usage of go juju from the command line10:51
fwereade_wrtp, awesome!!10:51
wrtpTheMue: ping11:09
TheMuewrtp: pong11:10
wrtpTheMue: i've got a little problem with state/internal_test.go11:10
wrtpTheMue: which is that it depends on the testing package... and i want to make the testing package depend on state11:10
wrtpTheMue: do you think it's possible to define the tests in internal_test.go outside state?11:11
TheMuewrtp: why that? i thought "testing" is an internal utility package? i'm now using it for the watcher test too.11:11
wrtpTheMue: its fine for external tests to depend on testing. but internal tests are different11:12
wrtpTheMue: actually the only dependency is testing.ZkRemoveTree11:13
wrtpTheMue: it could use the internal version, if that was beefed up a little.11:13
TheMuewrtp: i had an own zkRemoveTree() before the one in testing had been available11:14
TheMuewrtp: if that's the only point it should be changeable easily11:15
wrtpTheMue: you've still got a zkRemoveTree, in util.go11:15
TheMuewrtp: have to look where that is used11:15
wrtpTheMue: which could work fine for internal_test to use11:16
wrtpTheMue: it's used internally, e.g. when removing a unit11:16
TheMuewrtp: so it shouldn't be a problem for internal test, yep11:16
wrtpTheMue: cool. i'll copy the testing version (appropriately changed) to state/util.go, so it can cope with removing "/"11:18
TheMuewrtp: great11:18
wrtpfwereade_, TheMue: something to review, if you fancy it: https://codereview.appspot.com/590105811:52
wrtpfwereade_: i hope you don't think i've mangled cmd/juju *too* much :-)11:53
wrtpfwereade_: i did remove some comments which i thought were redundant.11:53
TheMuewrtp: two small comments back12:03
wrtpTheMue: thanks12:04
wrtp"The purpose sounds a bit strange related to "destroy"."12:05
wrtplol12:05
wrtpindeed!12:05
wrtpTheMue: BTW it's conventional for usage messages to be printed to stderr - they're usually printed in response to a usafe error.12:06
wrtpusage error12:06
TheMuewrtp: there's no "juju help destroy|grep foo"?12:08
wrtpTheMue: there's no juju help12:08
TheMuewrtp: maybe there should be a difference if it is requested or by error12:08
wrtpTheMue: you've got juju -help which is different12:08
wrtpTheMue: it's standard that -help goes to stderr12:09
wrtpTheMue: juju destroy -help |[2] grep foo :-)12:09
wrtpTheMue: or in bash: juju destroy -help 2>&1 | grep foo12:10
TheMuewrtp: hmm, "diff --help|grep text" works fine here12:12
wrtpTheMue: hmm, yeah. godoc --help | grep test doesn't12:14
wrtpTheMue: perhaps the flag package should distinguish12:15
wrtpTheMue: unfortunately that means that API would have to change, i think12:15
TheMuewrtp: some way to use the same Info for help as for error display would be nice12:17
wrtpTheMue: it does use the same info currently, i think.12:17
wrtpTheMue: --help is handled by the flag package12:17
TheMuewrtp: ok12:18
fwereade_wrtp, only looked at that casually but I'm totally happy with what you've done; I'm not sure whether "no comments" is better or worse than "repetitive comments", but meh12:18
wrtpfwereade_: if i *was* going to have comments there, i think i'd have them of the form: // Info implements cmd.Command.Info.12:20
wrtpfwereade_: so that we avoid having the redundancy, but there's still some useful info.12:20
wrtpfwereade_: but i've tried that before and gustavo's not keen.12:21
fwereade_wrtp, fair enough :)12:21
hazmatg'morning12:34
* hazmat is thankful for unity2d this am12:34
hazmatthe default busted on me after an upgrade12:34
fwereade_heya hazmat12:36
fwereade_hazmat, it seems to me that, for now, there is only one kind of legacy we can predict?12:36
fwereade_hazmat, am I missing something really obvious?12:36
fwereade_hazmat, (or have I just been infected with a gotastic but unpythonic tendency towards shortest-possible-names?)12:37
hazmatfwereade_, only that inevitably legacy will come to me more than one thing in the future12:38
hazmats/me/mean12:38
hazmati'm hopeful that with an upgrade system in place this can be minimalized via a state upgrade manager12:38
hazmatin the future12:38
fwereade_hazmat, my reading is that that's merely a "probably" and therefore not quite enough justification to imply multiples until they exist12:39
hazmatfwereade_, i guess the skinny is i'd rather call it what it is, then give it an overly generic name12:39
fwereade_hazmat, fair enough all the same12:39
fwereade_hazmat, btw, I just thought: if we're going to be providing provisioning info for EC2, I should be setting that up ASAP... but I'm not quite sure that uec-images is quite the right place for it12:45
fwereade_hazmat, do you have other suggestions and/or know who I should be speaking to to arrange this?12:46
hazmatfwereade_, smoser12:51
hazmator ben howard12:52
hazmati'm stepping out for a few, bbiab12:52
wrtpniemeyer: morning!13:02
wrtpjust off for lunch in the sunshine.13:03
niemeyerGood morning!13:03
fwereade_niemeyer, heyhey13:15
niemeyerfwereade_: Heya13:17
TheMueniemeyer: moin13:19
niemeyerTheMue: Moin moin! :)13:20
TheMue:D13:20
hazmatfwereade_, btw. i put my branches you reviewed into the approve queue.. we're only one requiring one review, unless the reviewer notes that they think a second review is nesc. if you think any of the ones you reviewed would benefit from a second review, please mark them ready for review13:25
fwereade_hazmat, cool, will do13:25
fwereade_hazmat, incidentally, trivial: http://paste.ubuntu.com/900437/13:26
hazmatfwereade_, lgtm13:26
fwereade_hazmat, cheers13:26
TheMuewrtp, niemeyer: https://codereview.appspot.com/590506413:37
wrtpback13:57
wrtpTheMue: i'm still not sure why we need to do the child watcher and the contents watcher with the same code13:59
TheMuewrtp: to reduce code14:00
wrtpTheMue: it's not much code, and i think each one would be clearer if it wasn't trying to be generic.14:00
wrtpTheMue: having a channel []string where the first element might contain the name of a child or the contents of a node seems odd to me.14:01
TheMuewrtp: each one would have the same amount of code with one (!) method less14:01
wrtpTheMue: i'm thinking about the API it presents, the foundation that other things are building on.14:02
hazmatniemeyer, fwereade_ where discussing  x-name support for maas/orchestra providers, afaicr while their have been requests to support it, we haven't agreed to do it on the basis that it violates juju's principle of not associating services to machine identity14:02
wrtpTheMue: i think that would be clearer if it was different for each kind of watch (even if you use the same code underneath)14:02
TheMuewrtp: so in this case you prefer code duplication?14:03
niemeyerhazmat: That's right14:03
wrtpTheMue: i think so. or at least two similar APIs on the outside, with two channel types.14:04
fwereade_niemeyer, hazmat: ok, that's cool; I'll implement orchestra-classes only then14:04
fwereade_hazmat, there's no underlying mechanism by which we can support maas-classes anyway, right?14:04
hazmatfwereade_, nope14:04
TheMuewrtp: your problem is the channel type?14:04
hazmatfwereade_, this cycle they only support name afaik14:04
wrtpTheMue: mostly, yes.14:05
fwereade_hazmat, niemeyer: ok, so we're happy releasing maas support without *any* applicable constraints?14:05
TheMuewrtp: so a reduction to one returned type, e.g. Change, with better methods, would be ok?14:05
niemeyerfwereade_, hazmat: That's something we develop.. it's easy to sync up on it14:05
niemeyerfwereade_: I'd suggest recommending the adoption of classes on the other side14:06
hazmatfwereade_, well we can only support at minimum what maas supports14:06
wrtpTheMue: i think there should be a different type for each kind of watcher (child vs contents)14:06
fwereade_hazmat, indeed, that's the argument for maas-name (weak as it may be) and consequently the argument for orchestra-name14:06
wrtpTheMue: in the same way that Children returns a different type to Get.14:07
hazmatfwereade_, i'll rendevous with the maas folks, just to make sure we're on the same page, but as niemeyer notes, its easy to update both as needed.14:07
hazmatfwereade_, except name violates juju's design principles.. so its a non starter in that regard14:07
fwereade_hazmat, yep, fair enough14:07
wrtpTheMue: so i think having two different types (ChildWatcher and ContentsWatcher) makes sense, even if they share some code under the hood14:08
TheMuewrtp: ok, e.g. watcher as private type and ChildrenWatcher and ContentWatcher as wrapping public types?14:09
wrtpTheMue: yeah, i think that could work well.14:10
TheMuewrtp: still don't think it's needed but it's ok, yes14:10
TheMuewrtp: i'll change and re-propose it immediately14:12
hazmatfwereade_ incidentally if you need to reach those guys.. their all hanging out on can irc  #cloud-dev .. looks like their still trying to get juju basics with maas working though14:13
wrtpTheMue: i think i'd just duplicate the code for each type. we were thinking about duplicating the code n times (once for each kind of watcher); this is just twice overall.14:13
hazmatfwereade_, no constraints for maas is confirmed14:13
wrtpTheMue: i *think* that trying to avoid the code duplication will make for more complex code with not a great deal of benefit.14:14
TheMuewrtp: i don't even think two type would give great benefit. *lol*14:14
fwereade_hazmat, ok, cool14:14
wrtpTheMue: we've got two types going on under the hood anyway (hence the switches on changeType)14:15
hazmatfwereade_, at least for 12.0414:16
fwereade_hazmat, indeed, I imagine we'll get a bit more done for 12.04.114:17
TheMuewrtp: imho it is only one type, like a wrench with two sizes14:20
wrtpTheMue: why doesn't Get return the same type as Children?14:21
TheMuewrtp: wy doesn't an 18mm side of a wrench can turn 17mm screws?14:22
niemeyerhazmat: I've had some issues trying to get juju-trunk to work in practice14:23
wrtpTheMue: why can't you use int16 as int32? :-)14:23
niemeyerhazmat: How have you guys been exercising the py code from trunk?14:23
TheMuewrtp: *lol*14:23
hazmatniemeyer, i use local provider on a regular basis14:25
niemeyerTheMue: I haven't been paying much attention to that discussion, but ChildrenWatcher and ContentsWatcher are both not entirely clear to me as being good approaches14:25
TheMuewrtp: as a compromise i would implement watcher as private type and provide two public types using it14:25
niemeyerTheMue: Watches have custom events, right?14:25
wrtpniemeyer: what kind of approach are you thinking of?14:25
niemeyerTheMue: If so, ContentWatch is too low level14:25
wrtpniemeyer: i'm thinking that ChildWatcher and ContentsWatcher make a good basis for layering onto14:26
TheMueniemeyer: so far wrtp and me discussed only children and content changes14:26
wrtpniemeyer: then higher level watches can be done as a simple pipeline14:26
niemeyerwrtp: layers should not be public.. the state package is not about zookeeper nodes14:26
TheMuewrtp: yep14:26
wrtpniemeyer: i wouldn't export these types14:26
niemeyerwrtp, TheMue: At least that's my perception at the moment.. I'm happy to review the code later14:26
wrtpniemeyer: or perhaps they might go in another package14:26
niemeyerwrtp: FooBar is an exported type in Go14:27
niemeyerwrtp: I know you understand that, but you've been talking about an exported type14:27
TheMueniemeyer: they are public like the presence pinger14:27
wrtpniemeyer: these aren't exported from the state package.14:27
niemeyerwrtp: Ok, cool14:27
wrtpTheMue: but tbh i'm not sure these deserve their own package14:28
niemeyerhazmat: What about ec2?14:28
TheMueniemeyer: it's an own package, parallel to presence14:28
TheMuewrtp: like presence14:28
niemeyerTheMue: Ok.. let's see then14:28
wrtpnot entirely convinced that presence holds its weight either as a separate package.14:28
hazmatniemeyer, i check there once a week14:28
niemeyerwrtp: Looks pretty good to me14:28
hazmatniemeyer, what problems are you having?14:28
TheMuewrtp: indeed, both could be re-integrated as private state libs, yes14:29
hazmatniemeyer, btw.. some priv messages went your way14:29
niemeyerhazmat: I've pasted details on Friday14:29
niemeyerhazmat: juju-admin is still broken14:29
hazmatniemeyer, with what version?14:29
hazmat494 i guess14:30
hazmatniemeyer, i've had an env running on that version in ec2 since friday14:36
niemeyerhazmat: Well, have you seen the error?14:37
niemeyerhazmat: I'm not doing anything fancy there..14:37
hazmatniemeyer, all my units come up..14:38
* hazmat checks his juju origin14:38
niemeyerhazmat: Sounds good then..14:38
hazmatniemeyer, i'm using juju-origin: lp:juju14:38
niemeyerhazmat: Me too..14:38
hazmatniemeyer, hmm.. i'll try again with a fresh env14:39
niemeyerhazmat: I don't have any good explanations.. wtf works on 494 too14:40
niemeyerhazmat: s/works/worked/14:40
niemeyerhazmat: But that error message is real14:40
niemeyerhazmat: Hmmm..14:41
niemeyer% bin/juju bootstrap14:41
niemeyererror: Environments configuration error: /home/niemeyer/.juju/environments.yaml: environments.sample.default-series: required value not found14:41
hazmatniemeyer, indeed its been required for several months14:44
niemeyerhazmat: Woah?14:44
hazmatlike back in november/dec afaicr14:44
hazmatif you got it to deploy with that then it sounds like you have an old client version installed14:45
hazmater. without14:45
wrtpTheMue: here's one possibility for a restructuring: http://paste.ubuntu.com/900559/14:45
niemeyerhazmat: No.. I just removed the entry from my configuration file14:45
niemeyerhazmat: Hoping it would pick a default value14:45
wrtpTheMue: (not that i've actually run the code or anything :-])14:46
TheMuewrtp: 173 vc 139 LoC14:47
TheMuewrtp: ;)14:47
hazmatniemeyer, sans a config file the default generated will include one, but its been a required thing for a while, the arguments at the time where just because i'm using an oneiric laptop doesn't mean i don't want a precise deploy.. ie. don't guess14:47
wrtpTheMue: line count isn't everything :-)14:48
niemeyerhazmat: I don't understand the perspective14:48
niemeyerhazmat: There's a guess being made either way14:48
niemeyerhazmat: It's just hardcoding the guess in the configuration file14:48
TheMuewrtp: yip, that's right14:48
TheMuewrtp: will have to take a deeper look14:49
hazmatniemeyer, which the user needs to edit likely.. ie. its explicitly configured vs implicitly guessed by the runtime14:49
niemeyerhazmat: Next time you pick a different laptop, it'll hardcode another guess14:49
niemeyerhazmat: When you change between the laptops, it'll alternate between the guesses14:49
niemeyerhazmat: That's why we're moving this onto the environment settings14:49
hazmatniemeyer, yes.. we're changing it14:50
niemeyerhazmat: Which means this isn't supposed to be enforced in the local configuration.. the environment will have an unrelated default14:50
hazmatniemeyer, but we're trying to remain compatible and error if its used in non legacy environments14:50
niemeyerhazmat: Ok.. if default-series isn't accepted at all in new environments, then it doesn't matter much14:51
hazmatniemeyer, well its recorded on the  environment directly14:52
hazmatand not sync'd from every client, ie it must be explicitly set post init14:52
niemeyerhazmat: or as --default-series I suppose14:53
hazmatideally we just record it as a constraint against bootstrap per the syntax in the spec14:53
niemeyerhazmat: s/constraint//14:53
hazmatwhere its just --constraint="series=precise"14:53
niemeyerhazmat: This is not a constraint14:54
niemeyerhazmat: This is an environment setting.. the series for a service comes from the charm (!!)14:54
hazmathmm.. yeah its not a user constraint14:54
hazmatniemeyer, really ? i had no idea14:54
niemeyerhazmat: Yeah.. it's a novel concept I just came up with14:54
fwereade_hazmat, series comes from the charm; charms don't have constraints; we need the environment to get the default-series14:57
fwereade_hazmat, whoops, what niemeyer said14:57
hazmatfwereade_, yup15:00
hazmatniemeyer, so re your ec2 problems it sounds like you have an old client around15:04
hazmatniemeyer, and re the env-settings proposal i don't see the review on the latest15:04
niemeyerhazmat:15:05
niemeyer[niemeyer@gopher ~/src/juju/trunk]% bzr revno15:05
niemeyer49415:05
niemeyer[niemeyer@gopher ~/src/juju/trunk]% bzr diff15:05
niemeyer[niemeyer@gopher ~/src/juju/trunk]%15:05
hazmatniemeyer, okay if you can capture console output, i'd be happy to take a look15:05
niemeyerhazmat: The error from the console output is in that paste I sent you on friday15:05
hazmatniemeyer, i fixed that on friday for r49415:06
niemeyerhazmat: Will check the review15:06
niemeyerhazmat: No, it's a different error. it says juju-admin not found, rather than anything related to zkpython15:06
wrtpTheMue: perhaps the separated structure becomes slightly more compelling if the events are a little more complex. for instance, i think we'll probably want to deliver child deltas rather than all children each time. here's an example that does that. http://paste.ubuntu.com/900583/15:06
hazmatniemeyer, the  paste i have from you is http://paste.ubuntu.com/897051/15:07
hazmatwhich is the client error, not the server15:07
niemeyerhazmat: Ah, you sent another revision on env-settings, will review again15:07
niemeyerhazmat: Yeah, that's another error I'm still seeing, with the new client, but I don't care as much15:08
hazmatniemeyer, could you pastebin the ec2-get-console-output of the bootstrap node15:08
TheMueTheMue: do we already have this use case?15:08
TheMuearg, talking with myself15:08
hazmati'm  curious why its occuring or why wtf or myself can't reproduce15:09
TheMuewrtp: do we have this use case?15:09
wrtpTheMue: yes15:09
wrtpTheMue: that's what the watchers tend to do in the python version AFAIR15:09
hazmatniemeyer, is it possible you used 'juju' with a ppa package installed?15:09
niemeyerhazmat: No, only have the charmstore from the ppa15:11
TheMuewrtp: my idea has been that the watcher is repsonsible for the raw delivering while retrieving of details, building deltas, creating configuration nodes and something like that would have to be done by the user of the watcher.15:11
niemeyerhazmat: I'm grabbing the output15:11
TheMuewrtp: that why i showed you the idea of behaviors via paste15:11
wrtpTheMue: if all use cases that watch for changes in the children want deltas, then i think that's what ChildWatcher should produce15:11
niemeyerhazmat: This is the real error I think:15:12
niemeyersudo: /usr/bin/bzr: command not found^M15:12
niemeyerhazmat: Full output: http://paste.ubuntu.com/900601/15:12
TheMuewrtp: as long as all want it yes15:12
hazmatinteresting.. this looks like the issue ... E: Package 'python-argparse' has no installation candidate15:13
TheMuewrtp: so once again the private one as the engine behind it and the public ones delivering raw content or children deltas15:13
* wrtp tries to find that piece of python code15:13
niemeyerhazmat: Indeed.. argparse is part of 2.7 isn't it15:13
hazmatniemeyer, it is15:13
wrtpTheMue: yeah, that sounds good.15:13
niemeyerhazmat: This was probably working until python2.6 was removed15:14
wrtpTheMue: what did you think of the example i suggested?15:14
niemeyerhazmat: By chance15:14
hazmatniemeyer, but the package still exists in precise as a virtual15:14
wrtpTheMue: (as a possible structure)15:14
TheMuewrtp: i'm fine with that idea too15:14
niemeyerhazmat: Yeah, but I don't think that'd make the command work15:14
wrtpTheMue: i think that's roughly the same idea15:14
niemeyerhazmat: It's already installed15:15
wrtpTheMue: the watcher type is the private shared implementation15:15
TheMuewrtp: exactly15:15
wrtpTheMue: the other types layer type-specific behaviour on top of that15:15
wrtpTheMue: i can only currently see two places in the python code that watches children. (both state/relation.py)15:18
hazmatniemeyer, that's odd still, because we don't request argparse installation15:19
hazmatniemeyer, for example here's my cloud-init from trunk against a newly bootstrapped ec2 instance.. http://paste.ubuntu.com/900611/15:19
hazmatniemeyer, that was removed in r44115:21
hazmatre argparse15:21
niemeyerjuju/providers/common/cloudinit.py:            "python-argparse", "python-txaws", "python-zookeeper"]15:21
niemeyerhazmat: My tree must be damaged somehow15:21
niemeyerhazmat: I'll kill it all and start over15:22
niemeyerhazmat: Yep, it's gone now..15:22
niemeyerhazmat: It was my mistake indeed.. bzr was lying.. even though it was saying revno was 494, the content was updated to a different revision when I was debugging stuff15:23
niemeyerhazmat: and diff didn't bother to tell15:23
niemeyerhazmat: Sorry for the trouble/noise15:23
hazmatniemeyer, yeah.. bzr isn't very nice when on non head rev15:24
niemeyerDestroying and rebootstrapping15:24
wrtpniemeyer: i did that with the go tool for real for the first time this morning :-)15:28
wrtpniemeyer: from the command line, with the same environment.yaml i was using for the python juju.15:28
niemeyerwrtp: Wow, that's very good to hear :)15:28
niemeyerwrtp: !!15:28
wrtpniemeyer: i had to do a destroy first, because it found the old state file :-)15:28
niemeyerhazmat: "Can we have an equals sign within each option."15:32
niemeyerhazmat: That's talking about "apt-proxy http://us-east-1.ec2.archive.ubuntu.com.s3.amazonaws.com/ubuntu/"15:32
niemeyerhazmat: You've probably just missed it15:33
wrtpniemeyer: are we going to have a meeting today, as discussed on fri?15:39
niemeyerwrtp: I guess we lost the timing by 2h already.. :(15:40
niemeyerwrtp: I'm game to do it right now15:40
niemeyerfwereade_, TheMue?15:40
wrtpniemeyer: me too.15:40
wrtpniemeyer: yeah, sad to see winter go, for that reason only :-)15:41
fwereade_niemeyer, sure15:41
TheMueniemeyer: i'm ready. an calendar invitation would be helpful too, to send an automatic reminder15:42
niemeyerCOol, let's go then!15:43
wrtpniemeyer: will you do the invites?15:43
niemeyerwrtp: Yeah15:43
niemeyerDone15:44
hazmatniemeyer, sure15:46
hazmatniemeyer, re bug https://bugs.launchpad.net/juju/+bug/93794915:52
hazmati'm planning on attaching a looping task to update the unit metadata15:53
hazmatjust curious if you had an objection15:53
hazmatwe have no notification from the provider when the address changes, so i don't see any other possibilities15:53
hazmatsince its performed out of band of juju itself15:54
niemeyerhazmat: Crap.. I had no idea ec2 invalidated the previous address if an EIP was assigned16:33
niemeyerhazmat: I'm stepping out for lunch.. will think about it meanwhile.. can we catch up later on that?16:35
hazmatniemeyer, sounds good16:41
hazmathmm.. alternatively we could skip storage of public addr, and always resolve it16:41
hazmatbut that might break publicly exposed charms16:42
hazmatif the use unit get-info16:42
hazmatthere's a secondary but related issue here of rebooting the bootstrap node and it comes up with a different ip16:42
hazmatbut that's private addresses16:42
hazmatfor which storing the zk address into the provider storage directly has some value, and distributing the signed url16:43
hazmatoto the agents16:43
SpamapSHey guys I just realized we query uec-images.ubuntu.com with http, not https ...17:05
SpamapSGoing to file a bug and a quick merge proposal (its a one line change).17:06
robbiew"its a one line change"....famous last words17:08
robbiewlol17:08
SpamapSle sigh ;)17:08
SpamapSright, one line of code.. 15 lines of test.. :-P17:10
hazmathttp://chrisjpowell.com/do-you-have-your-juju17:18
SpamapS./juju/providers/ec2/utils.py:    "http://uec-images.ubuntu.com/query/"17:19
SpamapSoops17:19
SpamapShttps://bugs.launchpad.net/ubuntu/+source/juju/+bug/96550717:19
robbiewhazmat: nice17:19
hazmatSpamapS, sounds good17:19
SpamapShazmat: please ACK and I'll push it into trunk17:19
hazmatfwiw, status changes are about to land (discussed on list last week)17:19
hazmatSpamapS,  sure, just show me the delta and run the tests17:20
SpamapShazmat: I don't commit until tests pass. :)17:21
hazmatSpamapS, ack'd17:23
SpamapShazmat: thanks, I'll push now17:24
hazmatSpamapS, ssl without cert checks is still MITM vuln17:25
SpamapShazmat: please don't tell me twisted doesn't verify certs17:26
hazmatits a good step forward even ignoring that17:26
hazmatSpamapS, it can be configured to do so17:26
SpamapSlike, not by default though? WTF17:26
SpamapSAgent is a very basic HTTP client. It supports HTTP and HTTPS scheme URIs (but performs no certificate checking by default). It does not support persistent connections.17:28
SpamapSso17:28
wrtpi'm off to enjoy the evening. see y'all tomorrow17:28
SpamapSeven the store is MITM vulnerable17:28
hazmatSpamapS, no its not configured to use it by default17:29
* SpamapS sighs17:33
SpamapStwisted.. ye disappoint me17:34
SpamapS*wow* .. nothing even built in to do it17:37
SpamapShttps://code.launchpad.net/~therve/txaws/ssl-verify/+merge/8374017:37
SpamapSrobbiew: hah.. you're right.. one line change my *** :)17:38
robbiewlol17:38
hazmatSpamapS, that's going to verify by platform as well17:40
hazmatosx does something different for certs17:41
* niemeyer waves17:44
hazmatSpamapS, thanks for that link, thats pretty useful17:45
* hazmat grabs a lunch snack17:48
SpamapShazmat: indeed, twisted should already have this built in.. its sort of shocking that they don't. :-P17:48
hazmata shorter form of the above.. http://stackoverflow.com/questions/1087227/validate-ssl-certificates-with-python17:48
SpamapShazmat: yeah I saw that too while looking around.. I think therve took it from there. :)17:49
SpamapShazmat: interesting to see that txaws has this implemented.. suggesting that we have to implement it too. :-/17:49
hazmatSpamapS, well.. its a dep.. we could just use it17:52
SpamapShazmat: eeeevil! ;)17:55
SpamapShazmat: but actually, since we're in ec2 provider land anyway.. hm.. maybe not so evil17:56
SpamapShazmat: on osx we'll just get no certs..17:57
SpamapShazmat: shouldn't that also be causing fails when talking to EC2 though?17:58
hazmatSpamapS, for the ec2 api endpoint we are doing cert validation by virtue of txaws..18:02
hazmatand hmm yeah.. that might be problematic on osx18:02
* hazmat verifies18:02
hazmathmm.. bigger problem with ostack interuppted osx test18:57
hazmatSpamapS, ping19:50
hazmatSpamapS, i looked at https://bugs.launchpad.net/juju/+bug/915520 over the weekend19:51
hazmatits not that big of a delta, but it ends up fundamentally reworking local provider19:51
niemeyerwrtp: ping20:28
niemeyerwrtp: ping20:43
SpamapShazmat: yeah, I think we'll have to wait on that one. I'm not sure 'High' is the right priority.. given that there are workarounds.20:52
SpamapShazmat: doh, that txaws.client.ssl hasn't been released yet21:28
hazmatSpamapS, odd.. and lame21:31
hazmati vaguely remember doing a release of it last time around21:31
hazmatdev has gotten much more active though21:31
SpamapShazmat: Duncan said he might be ready to do a release21:31
hazmatSpamapS, that would be ideal21:32
SpamapShazmat: I think from a security standpoint, we need that bit.21:32
SpamapSno tags in the bzr repo for releases. What a shame.21:32
fwereade_hazmat, if you're around: https://codereview.appspot.com/591304322:11
fwereade_hazmat, it's almost a trivial22:11
hazmatfwereade_, looking22:15
fwereade_hazmat, cool, tyvm22:15
hazmatfwereade_, done, lgtm, one minor on the err msg22:21
fwereade_hazmat, sweet, tyvm22:21
hazmatfwereade_, get some sleep ;-)22:21
fwereade_hazmat, don't worry, I shall :)22:21
niemeyerOkay, enough reviewing for now.. laters23:14
hazmatniemeyer, ping23:16
hazmatto late?23:16

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