[00:14] quicky for someone https://github.com/juju/juju/pull/11367 === timClicks__ is now known as timClicks [00:39] recording of today's office hours is available for viewing: https://www.youtube.com/watch?v=y0ed5clg070 [01:14] kelvinliu: charm.v6 pr merged [01:14] wallyworld: ty, I just updated the deps on the PR [01:48] kelvinliu: pr has some static analysis issues [01:48] also, did you test the remove-application behaviour just to ne sure? [01:49] tlm: or hpidcock: or kelvinliu: here's a k8s operator POC behind a feature flag https://github.com/juju/juju/pull/11368 [01:49] yes, I did. I m going to add to the QA steps [01:50] awesome, ty [01:51] will take a look after lunch wallyworld [01:56] no rush at all [01:58] wallyworld: btw here is the cmr question https://youtu.be/y0ed5clg070?t=1143 [01:58] ooh youtube, goodie [01:58] are we recording the questions anywhere? [01:58] in written form, to post and answer? [02:33] wallyworld: add them as comments to the discourse thread, the questions that were asked are there :) [02:38] ah thanks, need to catch up on that [02:51] wallyworld: I've updated https://github.com/juju/lumberjack/pull/1/files [02:51] wallyworld: there was actually a problem with the initial patch [02:51] ok, will look [02:52] as it was stopping the goroutine in the wrong place [02:52] ah [02:52] I spent time fixing all the tests [02:52] as the race detector wasn't happy [02:52] good to get that fixed [02:52] and there were failures without using a wait group to ensure the goroutine was closed before exiting Close [02:53] wallyworld: see https://github.com/natefinch/lumberjack/pull/100 for more PR descriptions [02:56] wallyworld: if you agree, we'll land it on our fork then update juju to use it [02:56] yup [02:56] if or when nate accepts the patch, we can move back, or just pull that into ours. [02:57] wallyworld: what I'll do is actually make a v2.pending banch on juju/lumberjack and target that [02:57] so the head of a branch will keep the commit [02:57] and when we pull v2 from upstream it won't break history [03:02] thumper: is is TestCompressOnResume gone? no longer relevant? [03:02] *why is [03:03] because I removed the extra call to mill at the start of the openExistingOrNew function [03:03] read my comment in the other PR to see why [03:03] ok [03:07] wallyworld: does that all make sense? [03:07] thumper: not a fan of the naked send to notifyRemoved etc [03:08] i think it does make sense, just looking at the code [03:08] the are only ever set in tests [03:08] if filesRemoved && l.notifyRemoved != nil { [03:08] l.notifyRemoved <- struct{}{} [03:08] } [03:08] right, but notifyRemoved is internal, and only set in the tests [03:08] ah ok [03:09] maybe enhance the comments? [03:09] they are used to remove all the <-time.After() calls in the tests [03:09] which ones? [03:09] someone looking atthe code won't necessarily see the tests before hand [03:09] // notifyRemoved is signalled when the millRunOnce method removes some [03:09] // old log files. If no files are removed, notifyRemoved is not signalled. [03:09] / only set and used in tests [03:09] or something [03:10] ok [03:10] will update [03:10] ty [03:11] force pushed [03:15] thumper: i think it looks good [03:17] wallyworld: thanks [03:23] * thumper does a little manual testing for the change [03:23] on juju [03:29] now I'm bothered... [03:29] I can't find the goroutine at all [03:29] there should be one... [03:30] * thumper thinks [03:30] oh [03:30] no [03:30] since I removed the initial mill [03:30] there isn't one initially [03:30] only when we rotate the logs [03:34] thumper: i did have that thought but didn't think hard enough about it :-( [03:36] no, it's all fine [03:36] we create it as needed [03:36] it's all good [03:37] * thumper has the change targeting develop [03:37] will retarget [03:46] https://github.com/juju/juju/pull/11370 [03:47] for the 2.7 dependency update [03:52] thumper: lgtm [03:52] wallyworld: thanks [03:53] wallyworld: when will the min juju version bits for k8s persistent volumes bit land? next week? [03:53] thumper: ALREADY LANDED [03:53] oops [03:53] caps lock fail [03:53] heh [03:53] I thought you were just really letting me know [03:54] yeah, you are deaf or something [03:54] i don't muck around with these things, wanted to get it done [03:58] wallyworld: jsing has pointed out that I really do need the functionality I removed [03:58] so I need to consider how to test properly [03:59] ok [04:04] kelvinliu: that mssing distro info bug should have been fixed a day or so ago [04:04] there was an issue with juju/os reo [04:04] *repo [04:04] I just got this error. [04:04] maybe rebase and try again? [04:04] hmmm :-( [04:05] maybe the fix didn't work properly [04:05] I merged dev to my branch yesterday. [04:07] ah, I will change it again, that change ported to dev yesterday as well [04:07] *check* [04:12] wallyworld: https://github.com/juju/lumberjack/pull/2 [04:12] looking [04:14] stress has 6776 successful runs in 1 min 6 sec [04:18] stress-race has 228 successful runs in 4 min 4 sec [04:19] thumper: lgtm, the tweak to avoid the race seems sound [04:19] coolio [04:21] hpidcock: tlm: looks like something broke. ran an action.... [04:21] 14:20:55 DEBUG unit.mariadb-k8s/0.hello ERROR x509: certificate is valid for application-mariadb-k8s, not mariadb-k8s [04:22] app tag vs app name [04:22] what gave that error ? [04:22] k8s or juju ? [04:23] it appears in the model log hosting the unit [04:23] haven't tracked it further [04:24] wallyworld: juju pr updated [04:24] hmmm that won't be a juju error [04:24] thumper: still +1 assuming sha is correct [04:25] is that bubbling up from the charm trying to talk with the mariadb process ? [04:25] * thumper double checks the vendor directory [04:25] tlm: it is a juju error i think to do with the cert we generate to have the workload pod talk to the operator pod [04:25] i blame hpidcock until proven wrong :-) [04:25] merging [04:26] yeah I am going with hpidcock, my bugs are far better then that [04:26] :) [04:27] wallyworld: ahhh this is because of that tag change [04:27] sigh [04:27] give me a minute [04:27] yeah, i just realised and was about to mention that [04:27] hpidcock: quick HO, i have another question [04:27] ? [04:27] sure [04:28] in standup [05:13] wallyworld: can you keep an eye on https://github.com/juju/juju/pull/11370 ? [05:13] I'm EOW [05:13] yup [05:14] avagoodwe [05:14] thanks [05:21] tlm: hpidcock anyone free to get a 2nd +1 plz https://github.com/juju/juju/pull/11362 [05:21] kelvinliu: on it [05:21] ty [06:00] hpidcock: merge failed for my pr, so i added a small commit to add the cert fix https://github.com/juju/juju/pull/11368 [06:01] wallyworld: LGTM [06:01] ta [08:17] Good morning [09:04] manadart, any thoughts about my issue around where to put ReloadSpaces function? [09:07] stickupkid: Yes, I missed that one. Let me see. [09:08] manadart, I thought there was only two places this existed, but turns out the agent also wants to reload spaces [09:08] manadart, that's totally fine, we just need to pick a place where to put it [09:20] manadart, can HO if you want? [09:22] stickupkid: Kickin' it in daily. [11:16] achilleasa: hey, i left a comment on https://github.com/juju/juju/pull/11341. a charm.v6 dep update which supercedes yours has already landed in develop [11:18] wallyworld: thanks for the heads up. I will rebase and drop the bump commit [11:18] no worries [11:18] also the debughooks test as a side effect [11:20] ? [12:07] manadart: is there a way to access the controller config from a facade or do I need to inject something like a config-getter via the c-tor? [12:20] nvm, found it [12:23] achilleasa: Great. [12:30] I think we do error matching wrong in juju [12:30] well for typed errors, we shouldn't care about the message, just what type it is [12:31] i.e. if you have an error returned, like errors.NotImplementedf("InvalidateCredentialCallback") [12:31] then the test should be [12:31] c.Assert(err, gc.ErrorType, errors.NotImplemented) [12:31] but we never do that [13:50] manadart, https://github.com/juju/juju/pull/11371 [14:24] achilleasa: https://github.com/juju/juju/pull/11339 is ready for review i think. [14:29] hml: looking in a bit [14:35] if I want to add a new error type and have it recovered client-side so it can be used outside the api caller's scope, is there an alternative to adding it to juju/errors? [14:46] hml: quick PR https://github.com/juju/errors/pull/45 [14:51] achilleasa: approved [14:51] hml: tyvm [15:22] stickupkid: https://github.com/go-goose/goose/pull/83 [15:36] fun facts: if you need to get a typed error (in the client) from a server error you need to call apiserver/common.RestoreError; however, if you try to import that pkg in api/uniter/unit.go you get an import cycle... [15:38] looks like apiserver/common imports worker/uniter/{operation, remotestate} which makes me sad :-( [15:50] stickupkid: https://github.com/juju/juju/pull/11372 [15:51] manadart, kewl, let me look into this [19:45] Hi again [19:45] So I still have three issues. [19:45] one is adding an OS image, the image just disappear after about 5 minutes... maybe juju tries to update images from "upstream" so clear the list? [19:45] second is enbling the image-metadata feature breaks others python using libjuju [19:45] those two there are kind of workaround [19:46] but the third one , doing a add-unit will end up creating more than one unit with the same name but different IDs, does not finish, but... (rackspace lagging) the server created at some point are fully created. [19:47] a question would be under which circonstances juju would create more than one unit with the same name? [19:48] flxfoo, not many folks around to answer your questions on the images right now. Posting to the juju discourse would be your best bet. [19:48] flxfoo: you’d only see a unit of the same name if the same charm was deployed in different models. [19:49] hml: thanks [19:49] unit names are unique per model [19:49] and will never reuse a name within a model [19:49] hml: first of all, everything was fne before rackspace remove the image we were using [19:50] flxfoo: :-(. have you see the docs on simplestream images for openstack? [19:50] second on one test model (no charm) doing add-machine after a few minutes I can have around 25 server with the same name (juju-XXXX-modelaname-XX) all in build state (rackspace lag) [19:51] flxfoo: i’d think most of the same would work there… without the new service. but i’m not sure that’d be a long term solution. [19:51] in another model (prod one) a simple memcache charm end up the same just less machine, just because I think there is more things to manage already, but the same [19:53] hml: yeah I think I read that doc about generating simplestream stuff... I end up having those files... but that to use bootstrapping only no? [19:53] flxfoo: that’s not cool definitely. have you filed a bug? [19:53] flxfoo: the same info in simplestreams will be used by units as well. [19:53] it’ll go to the default model [19:53] not yet, because I would like to have a bit more information to see if there something I did do properly or not [19:53] you’ll need to be careful of model-defaults and config to get it in other models [19:53] but it’s a config value, so can be set later [19:55] hml: so you are telling me to disable the image-metadata. And to go back to bootstrap with new values for an OS image? [19:55] you’ll want to use --model-default at bootstrap for models other than default [19:56] flxfoo: i don’t think you need to do a new bootstrap. [19:56] it’s a model config value [19:56] hml: o ok... did not see that, the only one I remember is `custom-image-metadata` this is one? [19:57] flxfoo crap… i might have been thinking of the wrong thing. [19:57] flxfoo: let me check something on rackspace [19:58] thanks hml [20:03] flxfoo: i’m wondering what the options are if rackspace has removed the images. I’m assuming there are not other ones which can be used. [20:04] well they gave me one, that I use when I am trying add-unit [20:04] with the help of wallyworld , I manage to add this image in the juju metadata list-images [20:04] flxfoo: i think a juju discourse post is your best option. the folks who can help are located around the world. discourse is good for asking questions etc. [20:05] hml: sure will do [20:05] discourse.jujucharms.net ? [20:05] dot com ? [20:06] flxfoo: https://discourse.jujucharms.com [20:06] there’s a whole bunch of docs, info. q&a etc there. [22:27] rick_h_: looks like we need a uniter upgrade step for app relation work, bug 1869275 [22:27] Bug #1869275: [subordinate] main unit did not get subordinate installed