[01:08] wallyworld: decided to propose add-k8s separately (will probably do a pr per command) to avoid mudding the mud [01:08] wallyworld: PTAL https://github.com/juju/juju/pull/10760 - add-k8s changes for ask-or-tell [01:10] ok [01:19] anastasiamac: lgtm, ty [01:20] oh wallyworld \o/ re: "cluster"... everywhere else in the command we actually say 'k8s cloud"... should i still say "k8s cluster" or 'k8s cloud' to b consistent..? [01:23] hmmm [01:23] k8s cloud [01:23] i prefer cluster but i think certain others wanted cloud [01:24] wallyworld: ack [01:49] wallyworld: +1 plz, thanks! https://github.com/juju/juju/pull/10761 [01:53] ok [01:54] kelvinliu: glad that one was caught [01:55] yeah, thanks! [01:57] wallyworld: PTAL next in line - https://github.com/juju/juju/pull/10762 - remove-k8s changes [02:00] +1 [02:01] \o/\o/\o/ [03:08] wallyworld: PTAL https://github.com/juju/juju/pull/10764 - remove-cloud changes :D [03:08] in a minute, just doing a critical fix [03:32] thumper: https://github.com/juju/juju/pull/10765 [03:32] still need to figure out the potential dependency issue [03:36] anastasiamac: lgtm with a suggestion [04:26] wallyworld: for ur delight PTAL https://github.com/juju/juju/pull/10766 - remove-credential changes :D [04:47] wallyworld: was about to fix the is_primary machine tag issue but found you already got a PR for this. here is a small enhancement, +1 plz thanks! https://github.com/juju/juju/pull/10767 [04:48] microk8s test is green now, just enabled the job on CI. I think the gke will be green as well once the k8s version fix landed, [05:02] kelvinliu: jeez, that was a big change [05:02] yes, it is! lol [05:04] kelvinliu: i merged directly since jobs are taking upwards of 40 minutes right now and it was a acceptance test only Pythin change [05:05] yep, thanks [05:07] `snap remove microk8s` fixed the 503 health check errors. last two runs were all green. so merged the PR on qa repo to enable the job. [07:35] wallyworld: I know what the k8s issue is with not gating on the upgrade. My late email on Friday was poorly communicated in that the issue fixed by John wasn't the only outstanding article for my patch. [07:36] I have a couple of patches to put up. [07:37] babbageclunk, you around? [07:42] babbageclunk, send email instead [07:58] manadart: awesome that you have it it hand :-) [08:00] wallyworld, it looks like it's return a complex error from juju rather than a string for pylibjuju [08:00] manadart: my PR to address the k8s issue is landing as we speak [08:00] stickupkid: you mean the libjuju storage issue? [08:00] wallyworld, yeah [08:01] i thought it looked like the params not being marshalled properly [08:01] ie the deploy storage args (a map) was not converted from a map of string to a map of struct [08:01] i didn;t raise the issue - just updated the description [08:02] wallyworld, yeah, sorry, you're right, it's expecting a param rather a string [08:02] in the bundle, it's a map of string, but in the api, it's a map of struct [08:02] but there's code to do it [08:02] wallyworld, ah, nice nice [08:02] if storage: [08:02] storage = { [08:02] k: client.Constraints(**v) [08:02] for k, v in storage.items() [08:02] } [08:02] appears to be *just* for bundles perhaps [08:03] so maybe there's a code path that is with bundle deploy what doesn't invoke that conversion, not sure yet [08:06] wallyworld, also it might be an issue where i've pinned the facades to agressively, so it might be worth checking those out [08:07] wallyworld, https://github.com/juju/python-libjuju/blob/master/juju/client/connection.py#L20-L118 [08:07] stickupkid: that storage functionality was introduced in 1.24 so inlikely to be that [08:07] wallyworld, that's good to know [08:08] probs a long undiscovered issue in libjuju, but i haven't diagnosed fully [09:02] manadart achilleasa I got a pr review regarding skipping a caas on upgrades. https://github.com/juju/juju/pull/10696#discussion_r336822311 Sadly I cannot 100% follow where the difference between applications and the others are. Currently I just skip if its kube, but there seems to be a easier way I don't know. Someone a pointer? [09:04] plan is to skip models and controller (just everything) related to kube on upgradesteps [09:04] nammn_de, wallyworld stickupkid rick_h Im having an issue with a for loop: [09:05] for i in $(seq 1 3); do lxc launch ubuntu:x "saltmaster-00${i}"; done [09:05] its telling me this isnt correct, but it should be. [09:06] am I missing something here? [09:08] Fallenour, bash or shell, if bash, that should work [09:09] Fallenour, https://paste.ubuntu.com/p/hTBvMdJwTq/ [09:10] nammn_de: thumper is saying you can remove that block at 129, because checking that the agent tag is of type machine satisfies this. [09:10] CAAS agents never have machine tags. [09:11] manadart: thanks 🦸‍♂️, ahhh why that? Do we have some kind of doc running around what kind of unit can have what kind of tag? For me thats pretty confusing tbh [09:13] jam, wallyworld: The reason k8s continues even though the DB upgrade worker fails to start is that the lock is returned *unlocked* if we are already on the current version. [09:13] So wallyworld's patch is sufficient. [09:13] stickupkid, its bash. I think I know wht the issue was. I was using an explicit path for a command in front of it, which is why it was failing. Im testing to see if adding that bin to PATH env will solve the problem [09:16] manadart: ah, yes, that makes sense [09:17] hey wallyworld ;) I see you put several lines of code in chat. I see manadart didnt eat your face for more than one line. Im assuming you work for canonical or the juju team o.o [09:18] i do [09:18] YAAASS *scribbles notes* *adds to birthday cake list* [09:18] I think theres at least 8-11 of you in here o.o [09:19] but ive only got like...4 :( [09:19] you guys do way too much for the community to not at least get birthday cake o.o [09:19] \o/ [09:19] :) [09:19] \o/ [09:19] 8D [09:19] glad you like juju :-) [09:20] But yea, I herd from the grape vine that canonical was hiring o.o [09:20] Oh, I dont like Juju [09:21] Id marry juju if she were about 5'2, 135 lbs. shes beyond amazing personality wise, and runs like a champ. After HA, like...all my problems died. Well, most of them. [09:21] its the best damn solution I think ive ever seen cloud wise. I converged it with Saltstack, and am deploying that to production now on live to about 15,000 people in my network. [09:22] I plan on doing talks on it all year this year, integrating it in systems, storage, and security. [09:22] there's an opening we're interiewing for in the APAC timezone [09:22] Id go for it, but I honestly dont think im good enough. You guys are several levels higher than I am in terms of skillset. [09:22] if you need help with talks etc we have a developer advocate on the team who would love to help if needed [09:23] omg thatd be AMAZING [09:23] One of the talks Im looking at doing is a full CI/CD stack deployment with juju to CI/CD in a can kinda concept. [09:23] he isa busy person so it depends on the requets etc, but feel free to ask and he can do what he can [09:24] im building a new solution out of the box that uses LXD containers instead of docker containers for kubernetes with git that allows security teams to be appeased from security concerns with service containers. [09:25] he's in NZ. you can ping him here to ask about stuff. his nic is timclicks [09:26] OOOH its TIM! Tim is the bees knees! [09:26] we don't necessarily have any pre-canned material but can offer general advice etc [09:26] wallyworld, oh thats totally fine! I generally find people dont like pre-canned stuff, so thats actualyl a good thing [09:26] great [09:27] I do a lot of international security conference talks already, and one thing Ive noticed is they dont respond well to canned anything. unless its a canned solution for deployment purposes with a custom talk on top [09:27] ill hit him up once hes on. For now, I have to figure out why sshing into one system logs me into another one? o.O [09:28] I have no idea how thats even possible honestly. [09:28] maybe the model you think you're connecting to is not [09:28] you can use juju models and the with with * is the current [09:28] or use the -m to specify exlicitly [09:28] oh its an ssh issue with ubuntu base, its not a juju issue. juju ssh always works reliably. [09:28] ok [09:29] btw, while its on my mind. do you guys still do the juju live events? [09:29] I think those are the greatest things since elderberry jam [09:29] the Juju Show? [09:29] yea [09:29] id love to be on one of those one day. [09:29] yeah, tim (clicks) and rick are working on a new batch [09:30] nayone can join in [09:30] omg [09:30] what? [09:30] o.O [09:30] how do I sign up? [09:30] good question, i'm not totally sure [09:30] and is there a subscription thing I can sign up for? [09:30] rick_h is the person to ask [09:30] 8D [09:30] he'll be on irc in a few hours [09:30] yaaaaasssss [09:31] rick_h, is awesome [09:31] i think they normally have a few people logged in and able to ask questiosn etc [09:31] he is [09:31] one thing Ive noticed about all canonical employees in general is they are all really happy [09:31] we're all peachy [09:32] canonical must be a great company or its the drugs in the free water, its gotta be. [09:32] only a handful of companies i know that are like that, saltstack, suse, canonical, riot [09:32] bit of booth [09:32] manadart: just to make sure before i press the merge button. I removed the block below: https://github.com/juju/juju/pull/10696/files#diff-8bc810c7809469ea95764da958639d1aR121-R126 [09:37] nammn_de: Looks fine. [09:37] manadart: 🏄‍♂️ [09:47] quick question, but what service(s) should be running for lxd/lxc to work? @wallyworld manadart nammn_de [09:47] I just built an lxd cluster, and it was in HA and fine, then I built 3 containers, and it died. [09:47] all three of them. So much for HA :P [09:53] Fallenour: way past my EOD now, i'll leave to others to answer as i need to get AFK [09:56] Fallenour: I think the daemon, the socket and possibly DNSmasq if the LXD bridge is managed. [10:23] manadart, I found out the issue is with the database, likely due to being a snap. Super frustrating that snaps are supposed to be stable, and my general experience is they are anything but. Im having to rebuild all three machines [11:24] stickupkid: got a min? [11:25] nammn_de, sure [11:25] stickupkid: Thinking about changing this function https://github.com/juju/charm/blob/974f39ea8f706c25616d022f70838c862687d3ca/charmdir.go#L418 [11:25] that it does not log anymore at all [11:26] so that it can be called n times without keep logging [11:26] problem: I want to log things at different levels (debug, error and warn) [11:27] on way to solve is to return the log level as well, but this would change the return signature from 3 to 5, which is kind of not cool [11:27] nammn_de, that make sense, maybe, pass in a logger, then you can tell it to not log at all if you don't want it too [11:27] ahhh good one [11:27] nammn_de, or return a list of issues [11:28] oh, list of issues are nice too. which "only" makes it to 4. Like both approaches. Gonna try them out [11:29] Im going the first approach to let the things stay lean [11:31] stickupkid how would you tell a logger not to log before passing it in? [11:31] *loggo [11:31] nammn_de, is there not a dumb logger [11:32] nammn_de, or provide an interface for a logger and then pass an instance of the logging instance to it [11:32] nammn_de, similar to how the worker are done (thumper has done work in this area) [11:33] stickupkid: thanks gonna take a look [11:40] Fallenour: what's up? [11:40] * rick_h yawns [11:41] Fallenour: your cluster died? [11:44] rick_h yup. It ate the orange squirrel cable of love, sailed off into the tuskegee, took a short walk on a long pier [11:48] * rick_h processes that for a while... [11:48] Fallenour: any hint on the issue? [11:48] rick_h, database connection issue. [11:49] Fallenour: for the lxd db? or juju to the mongodb? [11:49] rick_h, likely from snap/deb collision. [11:49] rick_h, lxd db, juju isnt at fault here [11:49] oh hmmm, how did they collide? [11:49] rick_h, followed a juju tutorial on bootstrap deployment in ha, but didnt do lxd.migrate because it wasnt in the instructions :P [11:50] Fallenour: :( [11:50] rick_h, lesson learned, lxd does NOT in fact like to use deb/snap in combination. it is very much so a dinner menu only kinda gal. [11:50] no no no, agree it's a "pick one and only one" [11:50] rick_h, took me 10+ minutes to run systemctl snap.lxd.daemon stop [11:50] just to kill the service [11:51] :/ you have much more patience than me [11:51] I think what it was doing is creating a race condition. I think it was passing the for i loop as a command to each node, which cuased that node to create a for loop for the next node [11:51] so it was infinitely trying to create 3 containers in loop [11:51] how helpful! [11:52] rick_h, I know! It just really wanted to make sure I had enough salt masters :P [11:52] I guess it figured 30,000+ salt masters should suffice [11:53] I did in fact, not concur, so we had a splitting of ways, ergo a complete rebuild inside maas [11:53] well for most people that'd be good, but nooooo you have to be all picky and stuff :P [11:53] ouch, sorry for the trouble [11:54] rick_h, yeaaa :( I like my systems like I like my tacos, a little on the light side [11:54] lol [11:54] rick_h, BUT! [11:54] * rick_h ducks [11:55] rick_h, its ok. because they have a lot more ram now, so this is good. [11:55] each has at least 96GB of ram apiece, so I can do the things with them now :) [11:55] now you're cool with 30k masters? [11:55] Fallenour: nice! that's cool [11:55] rick_h, no, sadly but I am ok with 3 ^__^ [11:56] rick_h, the good news is that once this is finally finished, Ill be bootstrapping the juju controllers onto them, and have a cluster in lxd. Ive come to the ultimate realization that I just dont need 3 physical dedicated controllers, they will never use the resources in the current state. [11:56] ok, glad the world sucks a bit but has a bright side. I'm going to go make some morning coffee [11:56] rick_h, morning....coffee? [11:57] rick_h, Dont you mean all day coffee? o.O [11:57] yes, the morning ritual that means it's morning time and the day is starting off ok [11:57] hah [11:57] no, cut off after lunch. Have to sleep you know [11:57] rick_h, mmmm, *starts looking around for the rick_h service restart command* [11:58] can anyone assist? I keep finding errors in my journalctl -u rick_h log files [11:58] rick_h, something something morning coffee? [11:58] XD [11:58] something something sleeping. cant have sleeping services o.o [11:59] my morning starts at 4 am EST, runs till 9-10PM EST [13:16] How do I use curtin the set the default DNS servers for all of my MAAS deployments? [13:21] danboid: can't you set the dns servers in MAAS itself? [13:22] danboid: under "settings, network services, DNS" [13:24] rick_h, That is already configured but its never worked. For some reason I have to edit the netplan config post deployment and add in the DNS server for it to work [13:25] Maybe bind isn't corretly configured on my maas controller? [13:28] rick_h, Shouldn'r MAAS error tho if bind was inorrectly configured? [13:28] danboid: I would think, I've not poked at it tbh other than setting it [13:28] I guess I've never really checked it was set like I did in config [13:32] I'm going to try with DNSSEC explicitly disabled, see if that helps. It was set to auto [13:49] Turning off DNSSEC under MAAS hasn't fixed it [13:53] danboid: ok, yea I don't know. It might be good to bug the maas folks. If you want to use curtain to tweak things there is the cloud-init configy stuff you can do in Juju but sounds like a work-around [13:54] The docs give the impression cloud-init is more for one-off configs and curtin is what I want if I want ti change the config of all deployments [13:55] well there's a juju cloud-init thing that runs on any machine juju goes on [13:56] danboid: https://discourse.jujucharms.com/t/using-model-config-key-cloudinit-userdata/512 [14:42] danboid, rick_h: add the dns server you want to use to the subnet details page [14:45] https://maas.io/docs/networking [14:47] Looks like bind is configured to only listen to localhost, despite it saying otherwise in /etc/bind/maas/named.conf.options.inside.maa [14:47] s [14:50] Yay! Fixed it! [14:51] oooh, ty bdx [14:51] np [14:51] I just had to comment out the `listen on` line in /etc/bind/named.conf.options [14:52] Then restart bind [14:54] stickupkid: still around? If yes might wanna take another review round? [14:54] https://github.com/juju/charm/pull/294 [14:59] nammn_de, looking now [15:03] nammn_de, almost, just the naming I think now [15:04] hml: I think this bit of code conflates space IDs (defaults) with space names (givenBindings that comes from the client). I will try to fix it as it prevents me from applying the Merge -> merge change [15:06] achilleasa: which bit of code? [15:06] stickupkid: thanks, just to make sure. You suggest to extract the extra file and just put it into same `charmdir` file as well? [15:06] hml: https://github.com/juju/juju/blob/6e8f551b5305ec2f30d1910a0788db52cc30466d/apiserver/facades/client/application/deploy.go#L134-L162 [15:06] nammn_de, yeah, along with renaming it from MockLogger [15:07] hml: the comment on L135-136 is misleading. DefaultEndpointBindingsForCharm returns space IDs [15:08] hml: we can either get everything as space names and pass it to NewBindings or translate givenBindings to spaceID before calling this func. What do you think? [15:09] achilleasa: pondering [15:09] hml: Is the model config param for the default space storing a name or a space ID? [15:09] nammn_de: ^ ? [15:10] achilleasa: a name [15:10] stickupkid: done [15:10] the space id will always be 0 [15:11] hml: I propose we change it to use space names since this is the facade [15:12] or more accurately, make DefaultEndpointBindingsForCharm return a Bindings object [15:13] stickupkid: while we are at it, we were planning to land https://bugs.launchpad.net/juju/+bug/1846240 time for a chat about it? I can see that you opened the bug as well as the inital PR [15:13] achilleasa: yes to the DefaultEndpointBindingsForCharm [15:13] Bug #1846240: Add support for Windows 2019 series [15:17] nammn_de, done [15:24] stickupkid: thanks man! still got time today to chat about the windows bot? Or gonna go soon? [15:33] nammn_de, give us 15 [15:37] stickupkid: us? if you mean in 15 min, im flexible :D just ping me if you can [15:41] hml: so it turns out fixing that needs much more effort than I thought (lots of validation code that assumes space names). I will just add the fix for the isModified for now and push the PR [15:41] hml: I am kinda surprised that deploy --bind worked while running my QA steps... [15:41] achilleasa: rgr [15:44] hml: can you take a look? https://github.com/juju/juju/pull/10734 (I am releasing the guimaas nodes ATM) [15:45] achilleasa: yes, already started with the cli pieces… will continue ;-) [15:46] hml: if you want we can pair tomorrow on the cleanup for the facade bits... [15:46] achilleasa: sounds like a plan [15:47] stickupkid: its me again for the related pr in our main repo https://github.com/juju/juju/pull/10744/files [15:48] nammn_de, https://media.giphy.com/media/RoajqIorBfSE/giphy.gif [15:49] stickupkid: no ones safe :D, btw. ignore the linting stuff, I will fix them by then [15:49] nammn_de, looks good to me [15:50] nammn_de, it doesn't like your lint issues though :D [15:50] nammn_de, got a dep issue going on [15:51] stickupkid: yeah i smell that I may forgott to add my gopkg lock :D [22:52] ughhh [22:52] Ive been fighting with this all day [22:52] does anyone know why LXD wouldnt see a MAAS API thats working? [22:52] Im so tired of issues like these @____@ [23:39] Fallenour: you mean that from inside the LXD container you cannot reach the MAAS API endpoint? [23:40] wallyworld: I've pushed that rebase [23:41] ta [23:41] time for more coffee