[02:24] wallyworld: thanks for your reply to my simplestreams question... I have another fun one though. [02:25] ok [02:25] Is the Endpoint field in an ImageConstraint ever actually used? [02:25] yes [02:25] Where? [02:25] to determine which cloud to use - endpoint + region uniquely define the cloud [02:26] Okay, but where? Not in simplestreams.go. [02:26] the index file contains region/endpoint pairsd [02:26] Nor in validation.go. [02:26] let me look [02:26] Yes, but I'm talking about the Endpoint field in the image constraint. [02:27] This parameter is awkward to obtain; the data suggests that the simplestreams metadata should be the source for that item in the first place. [02:29] jtv: in getImageIdsPath() in simplestreams.go - the CloudSpec structs are compared [02:29] Bugger. [02:29] no, simplestreams shouldn't e the source [02:29] a cloud deployment is defined by region + endpoint [02:30] that is a separate concept to simplestreams [02:30] I see. [02:30] i thought all the azure endpoints were well known? [02:30] lie for ec2? [02:30] like [02:30] in the ec2 case, they are hard coded [02:30] Yes, they are -- I got them from the simplestreams data. :) [02:31] lol [02:31] to use simplestreams, one must first know one's cloud [02:31] We know our cloud. It's "Azure." [02:31] in internals [02:31] the [02:31] Never heard of these endpoints until I saw them in the simplestreams data... [02:31] that's not simplestreams' fault :-P [02:32] Perhaps not. But as far as I'm concerned, all endpoints could have been the same for Azure. [02:32] i think they are mostly? [02:32] Mostly. [02:32] Not as good as all. [02:33] i'd just take the shortcut the ec2 uses and enumerate them in code [02:33] "All" has cyclomatic complexity of 1. "Mostly" has 2 or more. [02:34] is endpoint just an api address? [02:34] Enumerating them in the code has the added advantage that a change in regions may require an immediate code update. [02:35] yes [02:35] typically [02:36] for openstack, its the url to use to query the identity service [02:36] for ec2, i *think* we actually don't use it, not sure [02:38] jtv: china has a different endpoint iirc [02:39] bigjools: that's the problem I'm talking about, yes. [02:39] but gwacl is currently hard-coding just the one anyway [02:39] Well I'm not sure that's the same thing in the first place. [02:39] Because we're hardcoding the URLs that the documentation gives as fixed. [02:39] the problem is that there's two endpoints in Azure [02:40] and I think I only saw one in simplestreams [02:40] Two. [02:41] it lists the storage endpoint too? [02:41] I didn't see it do that [02:42] It does, but you may have to skip over a lot of other data in the json to get to it. [02:43] jtv: where? https://cloud-images.ubuntu.com/releases/streams/v1/com.ubuntu.cloud:released:azure.json [02:44] bigjools: search that page for "endpoint" and you'll find it. [02:45] jtv: there's no storage endpoint there they are only management endpoints [02:45] What's a storage endpoint? [02:45] there's a totally different URL for storage access [02:45] Oh, I missed your question. But how do you get storage endpoints? [02:45] exactly! [02:45] they are hard-coded right now [02:45] but I expect china has a different one like the management side does [02:46] Maybe. 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] *China [02:46] indeed [02:46] So it's not a given that these endpoints matter to us at all. [02:47] There is a documentation page about this. [02:47] It's consistently giving me "no data received." [02:47] Can anyone else see what's on http://windowsazure.cn/zh-cn/ ? [02:47] the 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:48] bigjools: that's exactly what I'm trying to figure out as well. Can you access that page I just linked to? [02:48] yes, it's in chinese [02:48] Bugger. [02:49] I guess they don't serve that page in Asia or something. :/ [02:49] chromium helpfully offers a translation [02:50] Ah yes, let Google, Microsoft, and the Chinese government slug it out. Any mention of URLs? [02:52] nope [02:53] can't see any api doc links either [02:53] I think we should ignore the endpoints for now [02:56] I agree --- except for the purposes of simplestreams, where they're required. :( [02:58] they are? [02:59] Yes... in simplestreams, the endpoint is the only thing that identifies Azure. [03:00] Ah, this blog post explains it: http://geekswithblogs.net/shaunxu/archive/2013/06/10/tips-an-tricks-of-developing-on-windows-azure-china.aspx [03:01] So it looks as if what we have now simply isn't going to work for mainland China anyway. [03:01] (Hong Kong seems to be on the international network, not the Chinese intranet) [03:08] jtv: sorry, you need to know an endpoint in advance to make use of simplestreams data? [03:09] and yes that blog shows that storage endpoint is different for china too [03:09] * bigjools curses bitey things and goes to get anti-itch cream [03:15] bigjools: 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:16] ok [03:21] No worries, I'm implementing. [03:21] Can't have nothing at all working for all of mainland China... === tasdomas_afk is now known as tasdomas [07:43] hey folks, trivial fix: https://codereview.appspot.com/12510043 [07:47] sidnei: done [07:47] heh, at the same time :) [07:48] thanks :) [07:59] hi [07:59] does juju-core support peer relations? [08:01] tasdomas: yes [08:02] thumper: and these relations can be established between units running different services (as long as the relation name is the same)? [08:02] mornin' all [08:02] no, peer relations are between units of one service [08:02] * rogpeppe is slightly scraped and bruised [08:04] thumper: is there any way to do service discovery in a juju environment? [08:04] * thumper hands tasdomas to rogpeppe === thumper is now known as thumper-afk [08:05] morning, rogpeppe [08:05] tasdomas: hiya [08:05] * rogpeppe needs some context [08:06] tasdomas: what do you mean by "service discovery" there? [08:06] rogpeppe, let's say I have two charms: a server charm and a client charm [08:06] tey both expose a relation [08:06] s/tey/they [08:07] is it possible for the client charm, when it is deployed, check if a service charm is already running in that environment [08:07] and initiate a relation automatically? [08:08] tasdomas: no, relations must be added explicitly by the user [08:09] rogpeppe, I see, thanks! [08:09] tasdomas: np [08:24] Any 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:45] jtv: looking [08:49] dimitern: Thanks for the review yesterday. Do I just need to find a second LGTM? (https://codereview.appspot.com/12469044/ ) [08:50] noodles775: yep; only really trivial changes can land with a single LGTM [08:50] jtv: looking as well [08:52] Any 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 [08:53] noodles775: i'll have a look after i've reviewed jtv's branch [08:54] Thanks rogpeppe [08:54] jtv: reviewed [08:57] jtv: reviewed [09:06] noodles775: reviewed [09:09] rogpeppe: so [09:09] rogpeppe: you said you're workng on agententity + unifying the common bits? [09:09] dimitern: yup [09:10] rogpeppe: how's that going? [09:10] dimitern: i've got two CLs in the works; i'm about to propose one [09:12] rogpeppe: ok === tasdomas is now known as tasdomas_afk [09:16] rogpeppe: 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:17] dimitern: quite a lot of stuff there doesn't need to be in separate API calls, but i'm sure you know that [09:17] rogpeppe: now, from there I'll reverse it to a bunch of server-side calls [09:17] rogpeppe: yeah, I know [09:21] dimitern: https://codereview.appspot.com/12473043/ [09:22] rogpeppe: so your idea is to expose Entity and get rid of the functions that use it, leave only the interfaces? [09:22] dimitern: yes [09:23] dimitern: i don't see that those functions add anything over just doing a type conversion inline [09:23] rogpeppe: maybe complement that with a bunch of errors in the errors package, describing X does not do Y [09:24] rogpeppe: like "%q does not support lifecycles" [09:24] dimitern: perhaps [09:25] dimitern: if so, probably one error type would be sufficient [09:35] rogpeppe: reviewed [09:35] dimitern: thanks [09:36] rogpeppe: do you think that we should support both flags together (ie. `juju init -f --show`), or just give one precedence? [09:36] noodles775: i think it's probably ok to just ignore -f if --show is given [09:36] noodles775: nothing to force [09:36] Cool [09:48] Thanks 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:49] jtv: i'm on it [09:49] Merci. [09:50] dimitern: responded. i'm interested in your thought on the "tagName" issue [09:50] s/thought/thoughts/ [09:50] jtv: done [09:51] Thanks! [09:51] rogpeppe: it is indeed from a tag, otherwise it's from an id or unitName, etc. [09:52] dimitern: it's *from* a tag, yes, but it isn't a tag itself [09:53] dimitern: because a tag has a "kind-" prefix, which this does not [09:53] rogpeppe: 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 outputs [09:53] rogpeppe: ah, good point [09:54] rogpeppe: can we call it fromTagSuffix then? [09:54] dimitern: sgtm [10:00] rogpeppe: replied [10:06] dimitern: PTAL [10:06] rogpeppe: looking now [10:07] rogpeppe: only one comment - the argument to *TagSuffixToId should be called "suffix" I think [10:07] dimitern: ah, good point [10:08] rogpeppe: otherwise, LGTM still [10:18] anyone fancy a quick review? https://codereview.appspot.com/12473043 [10:25] rogpeppe: updated - thanks. https://codereview.appspot.com/12469044/ [10:26] noodles775: ah, that's not quite what i had in mind [10:26] noodles775: i think that --show should print the generated configuration data without trying to write it to a file [10:27] noodles775: otherwise it's just a shortcut for cat $HOME/.juju/environments.yaml [10:28] rogpeppe: Right - I was wondering what the benefit was :) OK, hangon. [10:31] noodles775: responded with a couple of suggestions following on from the above === tasdomas_afk is now known as tasdomas [10:44] rogpeppe: done - sorry for the hand-holding. [10:44] noodles775: not at all, thanks for going along with me [10:47] noodles775: reviewed [10:50] rogpeppe: i think you forgot my reviews from yesterday? (plugin args and env.yaml simplification) [10:50] wallyworld_: oh bugger, sorry [10:50] np :-) [10:51] wallyworld_: looking now [10:52] ty [10:58] rogpeppe: s/ShowFile/Show/ pushed. [10:58] noodles775: cool [10:58] noodles775: thanks [11:31] fwereade, rogpeppe, mgz, axw: standup [11:53] rogpeppe: 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:55] noodles775: the submit procedure has changed [11:55] noodles775: we now go through a bot [11:55] noodles775: the way to submit is this: [11:56] noodles775: - 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] noodles775: - mark the merge proposal as Approved [11:56] noodles775: 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:57] noodles775: or, you can use rv-submit [11:58] noodles775: $ mkdir -p ~/.bazaar/plugins [11:58] $ bzr branch lp:rvsubmit ~/.bazaar/plugins/rvsubmit [11:58] $ bzr rv-submit (to land the branch) [11:59] dimitern: sorry, was idling before (I guess you figured that out tho) [12:00] axw: no worries, I remembered your tz and that you're not usually joining us for the standup, because it's too late for you [12:00] yeah it is a bit - I can come back for a standup in the future if needed [12:01] I'm off now, have a nice day [12:01] axw: if you think it's not too late, be welcome - we're trying to keep it within 30m tops [12:01] axw: you too! [12:02] ok [12:21] hi guys, is it expected that the charm directory has tight permissions? [12:21] drwx------ 4 root root 4.0K Aug 6 00:11 /var/lib/juju/agents/unit-ubuntu-0/charm/ [12:21] just wondering because the postgresql charm broke because of that, apparently that wasn't the case in pyjuju [12:22] https://bugs.launchpad.net/juju-core/+bug/1205286 [12:22] <_mup_> Bug #1205286: charm directory permissions now more restrictive [12:43] Thanks 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:45] noodles775: well, if it doesn't, I can mark it as approved for you [12:46] dimitern: it doesn't. Please do, thanks. [12:46] noodles775: done, let's see - the bot should pick it up soon === tasdomas is now known as tasdomas_afk [13:55] * rogpeppe goes for lunch [14:36] dimitern: ping [14:36] rogpeppe: pong [14:36] dimitern: i'm wanting to talk some things over to get my head straight [14:36] dimitern: fancy a chat? [14:37] rogpeppe: sure, just a sec [14:37] Another easy (but maybe controversial) if anyone has time: https://codereview.appspot.com/12535043 [14:37] dimitern: standup hangout? [14:38] rogpeppe: https://plus.google.com/hangouts/_/9557d0344a6e30b1320adbbf7a4406d3d7f27b09?hl=en === teknico1 is now known as teknico [15:42] wallyworld_: are you still around, by any chance? === tasdomas_afk is now known as tasdomas [16:39] cd .. [16:39] haha [16:40] anyone know why I can commit and push, but bzr pull says no pull location known or specified? [16:44] natefinch: try bzr pull --remember, and it will work from there on [16:46] sidnei: thanks... still getting used to bazaar === andreas__ is now known as ahasenack [17:59] a couple of branches i'd much appreciate reviews of, please: https://codereview.appspot.com/12473043/ and https://codereview.appspot.com/12551043 [17:59] time for me to go [18:00] g'night all [18:03] g'night rogpeppe === tasdomas is now known as tasdomas_afk === tasdomas_afk is now known as tasdomas === tasdomas is now known as tasdomas_afk