[00:09] wallyworld: hmm, I've never heard of that before and can't find any reference to it. Looks like jujugui bot commented on the previous PRs so perhaps handled by them? [00:10] veebers: could be the case, i'll follow up, thanks [00:12] wallyworld: sweet, sorry to pass it off :-\ [00:12] totslly ok [00:19] could i get an easy review of resources cmd registration complying with the fold - https://github.com/juju/juju/pull/7686 [00:20] anastasiamac: lookinh [00:20] g [00:23] menn0: i've replied, i hope it makes sense [00:23] wallyworld: ok thanks [00:24] babbageclunk: \o/ [00:25] wallyworld: that helps [00:26] menn0: still haven't decided whether we need status history etc. regardless, i think having status attribute on relation doc for the current value is useful; any history would be stored in the separate collection [00:26] makes the watcher much easier to write [00:26] wallyworld: that sounds right. i'm not sure about the need for history either. [00:26] I guess i'm not clear on what would cause the status to change [00:27] if someone revokes an offer for example [00:27] because a bill is unpaid or whatever [00:27] of they exceed a quota [00:27] *or [00:27] ok cool [00:27] any relations to that offer would become revoked [00:28] departed hooks would run [00:28] but relation is still there [00:28] rendered somehow in gui and inactive [00:28] able to be re-enabled again [00:28] anastasiamac: lgtm'd [00:28] wallyworld: cool. that helps my understanding a lot. [00:29] menn0: sorry for brief PR description, there wasn't a lot of context there for sure [00:29] all good [00:41] wallyworld: review done [01:24] menn0: thanks for review. i considered the simpler approach with the strings watcher and followup api call. but for cross controller communication, i was trying to eliminate the chattiness. in this use case, we don't need to know anything else from the watched model apart from life/status, so making a second api call (potentially across clouds) to get a simple scalar value that is instead passed across with the initial notification seemed [01:24] wasteful and something that would not scale so well. what do you think? with the notify->api call approach, i'd still need to do extra code to provide the apis to get the relation life/status. so there's no real net code reduction. and it is more chatty which is bad for networked services. i'm happy to revisit though if needed [01:28] wallyworld: np. as long as you've thought about it :) [01:30] menn0: the non-simple approach did bother me though. i'm still not 100% convinced it's the right thing to do to deviate from the model used elsewhere. what is your regret about the migration watcher? [01:33] wallyworld: a couple things: if you want access to the data/logic behind the watcher *without* using a watcher you end up having to double it up [01:34] wallyworld: and: managing the changing of data returned by a watcher API is more painful [01:34] they're harder to version [01:39] menn0: the watcher events arrive in the order they are generated server side i think? in my case here, we just care about knowing the last/latest status value. there's always the chance that the relation could go active again on the other side after you get told it's revoked, but there'd still be an as yet undelivered notification to act on to correct things. and life can only go one way. so i think it works out ok? [01:40] wallyworld: if you only need to know the latest status, then the "notify and check" pattern is probably better [01:41] wallyworld: b/c the API call to get current state, sees the latest state [01:41] wallyworld: where-as queued up "rich" notifications could have stale data in them [01:41] it does. but it's an api call that would otherwise not need to be made [01:41] wallyworld: totally [01:42] wallyworld: in this case, b/c of the nature of the API requests (cross-cloud), a specialised watcher certainly makes more sense [01:42] and multiple that uneeded api call by 1000 or however many consumers there are [01:42] more load on the offering controller [02:05] babbageclunk: did you see comment #7 on this bug 1705730? [02:05] Bug #1705730: `juju migrate` fails with source prechecks failed ERROR [02:06] wallyworld: no, I hadn't - thanks [02:06] np, i assumed you had been looking at it? [02:23] axw: thanks for review [02:43] babbageclunk: your PR is good to land [02:43] another tiny and easy review, please \o/ https://github.com/juju/juju/pull/7688 (order resources list output) [02:47] axw: oh, thanks! [02:48] thumper: can you merge https://github.com/juju/1.25-upgrade/pull/6 plz? [02:48] babbageclunk: you can now [02:49] thumper: oh, so I can - thanks! [04:42] wallyworld: can you please create a section under TODO in leankit for 1.25 upgrades? [04:42] sure [04:45] axw: done [04:45] wallyworld: gracias [04:45] babbageclunk: if you've got things to add ^^ [04:48] axw: oh yes, good call [05:31] axw: how can I find what permissions I have on a model? [05:32] axw: (or what permissions some other juju user has on the model) [05:33] babbageclunk: I think "juju show-model" lists users/access [05:33] yep [05:34] axw: ok - so as a superuser I should be able to grant access to a model to myself, I guess? [05:35] babbageclunk: yep === frankban|afk is now known as frankban === frankban is now known as frankban|afk [23:26] wallyworld, axw or thumper: I need to bounce some ideas off someone [23:27] ok [23:28] wallyworld: quick hangout? [23:29] wallyworld: https://hangouts.google.com/hangouts/_/canonical.com/menn0-wallyworld [23:29] sure