/srv/irclogs.ubuntu.com/2013/08/06/#juju-dev.txt

jtvwallyworld: thanks for your reply to my simplestreams question... I have another fun one though.02:24
wallyworldok02:25
jtvIs the Endpoint field in an ImageConstraint ever actually used?02:25
wallyworldyes02:25
jtvWhere?02:25
wallyworldto determine which cloud to use - endpoint + region uniquely define the cloud02:25
jtvOkay, but where?  Not in simplestreams.go.02:26
wallyworldthe index file contains region/endpoint pairsd02:26
jtvNor in validation.go.02:26
wallyworldlet me look02:26
jtvYes, but I'm talking about the Endpoint field in the image constraint.02:26
jtvThis parameter is awkward to obtain; the data suggests that the simplestreams metadata should be the source for that item in the first place.02:27
wallyworldjtv: in getImageIdsPath() in simplestreams.go - the CloudSpec structs are compared02:29
jtvBugger.02:29
wallyworldno, simplestreams shouldn't e the source02:29
wallyworlda cloud deployment is defined by region + endpoint02:29
wallyworldthat is a separate concept to simplestreams02:30
jtvI see.02:30
wallyworldi thought all the azure endpoints were well known?02:30
wallyworldlie for ec2?02:30
wallyworldlike02:30
wallyworldin the ec2 case, they are hard coded02:30
jtvYes, they are -- I got them from the simplestreams data.  :)02:30
wallyworldlol02:31
wallyworldto use simplestreams, one must first know one's cloud02:31
jtvWe know our cloud.  It's "Azure."02:31
wallyworldin internals02:31
wallyworldthe02:31
jtvNever heard of these endpoints until I saw them in the simplestreams data...02:31
wallyworldthat's not simplestreams' fault :-P02:31
jtvPerhaps not.  But as far as I'm concerned, all endpoints could have been the same for Azure.02:32
wallyworldi think they are mostly?02:32
jtvMostly.02:32
jtvNot as good as all.02:32
wallyworldi'd just take the shortcut the ec2 uses and enumerate them in code02:33
jtv"All" has cyclomatic complexity of 1.  "Mostly" has 2 or more.02:33
bigjoolsis endpoint just an api address?02:34
jtvEnumerating them in the code has the added advantage that a change in regions may require an immediate code update.02:34
wallyworldyes02:35
wallyworldtypically02:35
wallyworldfor openstack, its the url to use to query the identity service02:36
wallyworldfor ec2, i *think* we actually don't use it, not sure02:36
bigjoolsjtv: china has a different endpoint iirc02:38
jtvbigjools: that's the problem I'm talking about, yes.02:39
bigjoolsbut gwacl is currently hard-coding just the one anyway02:39
jtvWell I'm not sure that's the same thing in the first place.02:39
jtvBecause we're hardcoding the URLs that the documentation gives as fixed.02:39
bigjoolsthe problem is that there's two endpoints in Azure02:39
bigjoolsand I think I only saw one in simplestreams02:40
jtvTwo.02:40
bigjoolsit lists the storage endpoint too?02:41
bigjoolsI didn't see it do that02:41
jtvIt does, but you may have to skip over a lot of other data in the json to get to it.02:42
bigjoolsjtv: where? https://cloud-images.ubuntu.com/releases/streams/v1/com.ubuntu.cloud:released:azure.json02:43
jtvbigjools: search that page for "endpoint" and you'll find it.02:44
bigjoolsjtv: there's no storage endpoint there they are only management endpoints02:45
jtvWhat's a storage endpoint?02:45
bigjoolsthere's a totally different URL for storage access02:45
jtvOh, I missed your question.  But how do you get storage endpoints?02:45
bigjoolsexactly!02:45
bigjoolsthey are hard-coded right now02:45
bigjoolsbut I expect china has a different one like the management side does02:45
jtvMaybe.  But the documentation always says "here's the URL for this request" and never "here's the URL for this request outside of mainland Chia."02:46
jtv*China02:46
bigjoolsindeed02:46
jtvSo it's not a given that these endpoints matter to us at all.02:46
jtvThere is a documentation page about this.02:47
jtvIt's consistently giving me "no data received."02:47
jtvCan anyone else see what's on http://windowsazure.cn/zh-cn/ ?02:47
bigjoolsthe first time I saw the china endpoint was in the simplestreams data so I wonder where that was seen to know to put it in there?02:47
jtvbigjools: that's exactly what I'm trying to figure out as well.  Can you access that page I just linked to?02:48
bigjoolsyes, it's in chinese02:48
jtvBugger.02:48
jtvI guess they don't serve that page in Asia or something.  :/02:49
bigjoolschromium helpfully offers a translation02:49
jtvAh yes, let Google, Microsoft, and the Chinese government slug it out.  Any mention of URLs?02:50
bigjoolsnope02:52
bigjoolscan't see any api doc links either02:53
bigjoolsI think we should ignore the endpoints for now02:53
jtvI agree --- except for the purposes of simplestreams, where they're required.  :(02:56
bigjoolsthey are?02:58
jtvYes... in simplestreams, the endpoint is the only thing that identifies Azure.02:59
jtvAh, this blog post explains it: http://geekswithblogs.net/shaunxu/archive/2013/06/10/tips-an-tricks-of-developing-on-windows-azure-china.aspx03:00
jtvSo it looks as if what we have now simply isn't going to work for mainland China anyway.03:01
jtv(Hong Kong seems to be on the international network, not the Chinese intranet)03:01
bigjoolsjtv: sorry, you need to know an endpoint in advance to make use of simplestreams data?03:08
bigjoolsand yes that blog shows that storage endpoint is different for china too03:09
* bigjools curses bitey things and goes to get anti-itch cream03:09
jtvbigjools: yes, this is a pair of parameters we must provide to the imagemetadata code in order for it to find us an OS image: "region" and "endpoint."  The endpoint is the only thing that tells it we're looking for an Azure image, as opposed to (say) an image in EC2.03:15
bigjoolsok03:16
jtvNo worries, I'm implementing.03:21
jtvCan't have nothing at all working for all of mainland China...03:21
=== tasdomas_afk is now known as tasdomas
sidneihey folks, trivial fix: https://codereview.appspot.com/1251004307:43
thumpersidnei: done07:47
axwheh, at the same time :)07:47
sidneithanks :)07:48
tasdomashi07:59
tasdomasdoes juju-core support peer relations?07:59
thumpertasdomas: yes08:01
tasdomasthumper: and these relations can be established between units running different services (as long as the relation name is the same)?08:02
rogpeppemornin' all08:02
thumperno, peer relations are between units of one service08:02
* rogpeppe is slightly scraped and bruised08:02
tasdomasthumper: is there any way to do service discovery in a juju environment?08:04
* thumper hands tasdomas to rogpeppe08:04
=== thumper is now known as thumper-afk
tasdomasmorning, rogpeppe08:05
rogpeppetasdomas: hiya08:05
* rogpeppe needs some context08:05
rogpeppetasdomas: what do you mean by "service discovery" there?08:06
tasdomasrogpeppe, let's say I have two charms: a server charm and a client charm08:06
tasdomastey both expose a relation08:06
tasdomass/tey/they08:06
tasdomasis it possible for the client charm, when it is deployed, check if a service charm is already running in that environment08:07
tasdomasand initiate a relation automatically?08:07
rogpeppetasdomas: no, relations must be added explicitly by the user08:08
tasdomasrogpeppe, I see, thanks!08:09
rogpeppetasdomas: np08:09
jtvAny reviewers available for https://codereview.appspot.com/12512043 ?  It matches a gwacl API change, so I'd like to get it in quickly and minimize the window for inconvenience.08:24
rogpeppejtv: looking08:45
noodles775dimitern: Thanks for the review yesterday. Do I just need to find a second LGTM? (https://codereview.appspot.com/12469044/ )08:49
dimiternnoodles775: yep; only really trivial changes can land with a single LGTM08:50
dimiternjtv: looking as well08:50
noodles775Any reviewers able to do a second check on https://codereview.appspot.com/12469044/ (just updates juju init to create the environments.yaml by default, as per https://bugs.launchpad.net/bugs/1208491 )08:52
_mup_Bug #1208491: Juju init should write an environments.yaml <papercut> <juju-core:In Progress by michael.nelson> <https://launchpad.net/bugs/1208491>08:52
rogpeppenoodles775: i'll have a look after i've reviewed jtv's branch08:53
noodles775Thanks rogpeppe08:54
dimiternjtv: reviewed08:54
rogpeppejtv: reviewed08:57
rogpeppenoodles775: reviewed09:06
dimiternrogpeppe: so09:09
dimiternrogpeppe: you said you're workng on agententity + unifying the common bits?09:09
rogpeppedimitern: yup09:09
dimiternrogpeppe: how's that going?09:10
rogpeppedimitern: i've got two CLs in the works; i'm about to propose one09:10
dimiternrogpeppe: ok09:12
=== tasdomas is now known as tasdomas_afk
dimiternrogpeppe: i was looking at the uniter code and came up with a list of client-side api stuff we need: http://paste.ubuntu.com/5954390/09:16
rogpeppedimitern: quite a lot of stuff there doesn't need to be in separate API calls, but i'm sure you know that09:17
dimiternrogpeppe: now, from there I'll reverse it to a bunch of server-side calls09:17
dimiternrogpeppe: yeah, I know09:17
rogpeppedimitern: https://codereview.appspot.com/12473043/09:21
dimiternrogpeppe: so your idea is to expose Entity and get rid of the functions that use it, leave only the interfaces?09:22
rogpeppedimitern: yes09:22
rogpeppedimitern: i don't see that those functions add anything over just doing a type conversion inline09:23
dimiternrogpeppe: maybe complement that with a bunch of errors in the errors package, describing X does not do Y09:23
dimiternrogpeppe: like "%q does not support lifecycles"09:24
rogpeppedimitern: perhaps09:24
rogpeppedimitern: if so, probably one error type would be sufficient09:25
dimiternrogpeppe: reviewed09:35
rogpeppedimitern: thanks09:35
noodles775rogpeppe: do you think that we should support both flags together (ie. `juju init -f --show`), or just give one precedence?09:36
rogpeppenoodles775: i think it's probably ok to just ignore -f if --show is given09:36
rogpeppenoodles775: nothing to force09:36
noodles775Cool09:36
jtvThanks dimitern & rogpeppe for your reviews!  Could either of you update gwacl on the build machine so I can land?  I'll also send out an email to juju-dev about updating dev systems.09:48
dimiternjtv: i'm on it09:49
jtvMerci.09:49
rogpeppedimitern: responded. i'm interested in your thought on the "tagName" issue09:50
rogpeppes/thought/thoughts/09:50
dimiternjtv: done09:50
jtvThanks!09:51
dimiternrogpeppe: it is indeed from a tag, otherwise it's from an id or unitName, etc.09:51
rogpeppedimitern: it's *from* a tag, yes, but it isn't a tag itself09:52
rogpeppedimitern: because a tag has a "kind-" prefix, which this does not09:53
dimiternrogpeppe: and please use "test %d:" it makes more sense imho and as william said (and I agree) my eyes are trained to look for that in log outputs09:53
dimiternrogpeppe: ah, good point09:53
dimiternrogpeppe: can we call it fromTagSuffix then?09:54
rogpeppedimitern: sgtm09:54
dimiternrogpeppe: replied10:00
rogpeppedimitern: PTAL10:06
dimiternrogpeppe: looking now10:06
dimiternrogpeppe: only one comment - the argument to *TagSuffixToId should be called "suffix" I think10:07
rogpeppedimitern: ah, good point10:07
dimiternrogpeppe: otherwise, LGTM  still10:08
rogpeppeanyone fancy a quick review? https://codereview.appspot.com/1247304310:18
noodles775rogpeppe: updated - thanks. https://codereview.appspot.com/12469044/10:25
rogpeppenoodles775: ah, that's not quite what i had in mind10:26
rogpeppenoodles775: i think that --show should print the generated configuration data without trying to write it to a file10:26
rogpeppenoodles775: otherwise it's just a shortcut for cat $HOME/.juju/environments.yaml10:27
noodles775rogpeppe: Right - I was wondering what the benefit was :) OK, hangon.10:28
rogpeppenoodles775: responded with a couple of suggestions following on from the above10:31
=== tasdomas_afk is now known as tasdomas
noodles775rogpeppe: done - sorry for the hand-holding.10:44
rogpeppenoodles775: not at all, thanks for going along with me10:44
rogpeppenoodles775: reviewed10:47
wallyworld_rogpeppe: i think you forgot my reviews from yesterday? (plugin args and env.yaml simplification)10:50
rogpeppewallyworld_: oh bugger, sorry10:50
wallyworld_np :-)10:50
rogpeppewallyworld_: looking now10:51
wallyworld_ty10:52
noodles775rogpeppe: s/ShowFile/Show/ pushed.10:58
rogpeppenoodles775: cool10:58
rogpeppenoodles775: thanks10:58
dimiternfwereade, rogpeppe, mgz, axw: standup11:31
noodles775rogpeppe: hrm, I tried `lbox submit` but apparently the perms have changed recently ( http://paste.ubuntu.com/5954761/ ). I'll check with John Meinel who apparently changed the perms recently.11:53
rogpeppenoodles775: the submit procedure has changed11:55
rogpeppenoodles775: we now go through a bot11:55
rogpeppenoodles775: the way to submit is this:11:55
rogpeppenoodles775: - set the commit message on the merge proposal (by copying and pasting from the mp description, making sure to include the codereview link)11:56
rogpeppenoodles775: - mark the merge proposal as Approved11:56
rogpeppenoodles775: the branch will then be merged some time later, when the bot has tested it (on the order of 15 minutes, depending on the size of the queue)11:56
dimiternnoodles775: or, you can use rv-submit11:57
dimiternnoodles775:  $ mkdir -p ~/.bazaar/plugins11:58
dimitern$ bzr branch lp:rvsubmit ~/.bazaar/plugins/rvsubmit11:58
dimitern$ bzr rv-submit (to land the branch)11:58
axwdimitern: sorry, was idling before (I guess you figured that out tho)11:59
dimiternaxw: no worries, I remembered your tz and that you're not usually joining us for the standup, because it's too late for you12:00
axwyeah it is a bit - I can come back for a standup in the future if needed12:00
axwI'm off now, have a nice day12:01
dimiternaxw: if you think it's not too late, be welcome - we're trying to keep it within 30m tops12:01
dimiternaxw: you too!12:01
axwok12:02
ahasenackhi guys, is it expected that the charm directory has tight permissions?12:21
ahasenackdrwx------ 4 root root 4.0K Aug  6 00:11 /var/lib/juju/agents/unit-ubuntu-0/charm/12:21
ahasenackjust wondering because the postgresql charm broke because of that, apparently that wasn't the case in pyjuju12:21
ahasenackhttps://bugs.launchpad.net/juju-core/+bug/120528612:22
_mup_Bug #1205286: charm directory permissions now more restrictive <juju-core:New> <postgresql (Juju Charms Collection):Triaged> <postgresql-psql (Juju Charms Collection):Triaged> <https://launchpad.net/bugs/1205286>12:22
noodles775Thanks rogpeppe, dimitern. FWIW, it looks like you need to be a branch reviewer to use rv-submit: http://paste.ubuntu.com/5954888/12:43
* noodles775 tries adding an approve vote to see if that helps.12:43
dimiternnoodles775: well, if it doesn't, I can mark it as approved for you12:45
noodles775dimitern: it doesn't. Please do, thanks.12:46
dimiternnoodles775: done, let's see - the bot should pick it up soon12:46
=== tasdomas is now known as tasdomas_afk
* rogpeppe goes for lunch13:55
rogpeppedimitern: ping14:36
dimiternrogpeppe: pong14:36
rogpeppedimitern: i'm wanting to talk some things over to get my head straight14:36
rogpeppedimitern: fancy a chat?14:36
dimiternrogpeppe: sure, just a sec14:37
noodles775Another easy (but maybe controversial) if anyone has time: https://codereview.appspot.com/1253504314:37
rogpeppedimitern: standup hangout?14:37
dimiternrogpeppe: https://plus.google.com/hangouts/_/9557d0344a6e30b1320adbbf7a4406d3d7f27b09?hl=en14:38
=== teknico1 is now known as teknico
rogpeppewallyworld_: are you still around, by any chance?15:42
=== tasdomas_afk is now known as tasdomas
natefinchcd ..16:39
natefinchhaha16:39
natefinchanyone know why I can commit and push, but bzr pull says no pull location known or specified?16:40
sidneinatefinch: try bzr pull --remember, and it will work from there on16:44
natefinchsidnei: thanks...  still getting used to bazaar16:46
=== andreas__ is now known as ahasenack
rogpeppea couple of branches i'd much appreciate reviews of, please: https://codereview.appspot.com/12473043/ and https://codereview.appspot.com/1255104317:59
rogpeppetime for me to go17:59
rogpeppeg'night all18:00
natefinchg'night rogpeppe18:03
=== tasdomas is now known as tasdomas_afk
=== tasdomas_afk is now known as tasdomas
=== tasdomas is now known as tasdomas_afk

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