 Let's get into the big topic of open source, something that we actually have in mind. This is so awesome. We are an open culture that needs to be considered. What is that process that they developed, or let's say... How's the communities of the system really doing that? Alright, and we are live. Welcome everyone to another exciting episode of Get Off Sky to the Galaxy. I'll be your captain here. Christian Hernandez, technical marketing here at Red Hat. And with me, I have a special co-captain today here with me. Very, very excited to have Hannah here from CodeFresh. Hannah, happy to introduce yourself. Give us the usual spiel, right? Where we can like and subscribe. You know what you're doing at CodeFresh, your title, all that cool stuff. Thanks. Yeah, I'm Hannah Selickton, and I am a developer advocate over at CodeFresh. CodeFresh is essentially a continuous delivery platform. And we're all about Argo and GitOps. So I'm really excited to be here. But before being a DA, I was actually a .NET developer for a really long time. Oh, wow. So GitOps is like, you know, when I think of ways that we could have improved our processes when I was a developer, I'm like, oh, geez, okay. But yeah, so that's essentially a little bit about me. But I'm excited to talk about Argos, you need autopilot with you guys, do a demo and talk about all things GitOps. Wow. So like, yeah, so .NET. So that's a big pivot, right? I'm telling you right now, that's a big pivot, right? You're, you are, you know, going from .NET for those who don't know .NET, right? Like you're talking about like a monolith, like on a single server. And like, I can't imagine you like being dumped in this world now. Or it's like, all right, I'm going to do GitOps. And I was like, whoa, this is completely different. Yep. It is. Yeah. So it's, but I'm excited. And I feel like, so admittedly, a lot of the things I like to talk about are beginner stuff, but you know, there's always room for that. And yeah, I just, it's so funny because now everything that I get to work on, I'm like, oh, I got to tell like my friends who are still stuck in. Yeah. .NET and typing in C sharp, like, let's, here, let's, let's talk about this. Let's talk about infrastructure. And they're like, what's Kubernetes? So yeah. Yeah. Yeah. Well, yeah. I mean, there's, there's, there's this thing where it's like, when do you stop doing like kind of like beginner stuff? And it's like, you never really do because it's like, not everyone knows what, what you're doing. Yeah. So it's, it's really cool. So, so yeah. So excited to have you here. Excited to talk about autopilot, right? Which is like a project of, of, yeah. Tiger, Tiger says, yes, what is Kubernetes? So tiger the intern. You'll always be the intern to me. So just a few things real quick, kind of top of mind topics here, kind of like what Andrew does. Argos CD version 2.3 is, it's out. So, so 2.3 is out big release, by the way, because it includes application sets and Argos CD notifications. Right. And so, which is kind of cool, like it included that part of the product because like I use them both a lot as part of Argos CD. Like, I don't know, no longer have to like start loading things in. I'm going to do an episode, maybe one day on Argo notifications because it's actually a really cool project. So I've been playing with that and it's really cool. So check that out. Actually, let me put, let me put that link. I had the link up and I closed it without sharing it, which was kind of weird for me. But let me put that in the chat for you guys to check out the blog. You know, talking about Argos CD version 2.3, can you read all about it? KubeCon schedule is out, which is really exciting. Hannah, I don't know about you, but my talk didn't get accepted. Yeah, it's very few. Unfortunately, not right. Well, I think we're in good company, right? Because a lot of people's talks didn't get accepted. It's true, yeah. So it's a hard thing. But I'll still be there, right? I'll still be at KubeCon in EU. And so the, let me drop the, where's the KubeCon schedule? Yeah. Oh, I already did. All right, cool. I'm like, did I just drop that in the chat? Yes, I did. So yeah, so I'll be there. So for those, for those who will be there, you can wave me down. I'll be at getups con as well. So that's, that's all. So cool. You know, if you're going to be at getups, if you're going to be at KubeCon, I, I'll, I'll tell you everyone, right? Like you need to be at getups con as well. Right. So if I see a KubeCon, but if I didn't see you at getups con, I'm going to have a conversation with you. And so we actually met, we met at getups con. That's right. We did. We met up getups con here. I point here because that's where the convention center is here in Los Angeles. I live here in Los Angeles. So, um, yes, yeah. So, and this is actually where I got that shirt. Yep. Yep. We were almost twins, almost. Yeah. So, um, so yeah. So, um, be there, maybe you'll get another shirt. I don't know. We'll see. Yeah. Yeah. The shirts, shirts galore. Dan still owes me a hoodie, by the way. I don't know. Okay. Okay. Those are nice hoodies. I shouldn't wear it. Yeah. Yeah. He's watching. You still, you still owe me a hoodie. Um, and so, uh, so yeah, so, um, the, the schedule is out. So go ahead and check that out. Um, the schedule is out. So see, see what you can see, what you can't see. We're still working on the getups con schedule. So that will, um, you know, I'm part of, part of the programming committee there. We're almost done. That'll, that'll be out pretty soon. And so, um, take a look for that. So, um, yeah. So anyways, um, well, uh, yeah. Well, he, he says there's the, the, the rejects, um, conference. I hope, I hope they're doing that again. Right. That's always really cool to go to see it. Like, Hey, I want to be part of the losers. That's, that is really good. Um, but, uh, community for everybody. Yeah. That's right. Exactly. There's a community for everyone. Right. I mean, if it's well, we'll be in good company at least. Right. Like, yeah. Yeah. Oh yeah. For sure. And so, so yeah, so, um, yeah, without further ado, um, let's talk about, uh, Argo, uh, Argo city autopilot, right? And so let's, let's, uh, let's, let's die right in, right? Let's, um, and for those who are, um, who are in the chat, feel free to drop questions in the chat. Um, and also just like always like, subscribe, share all that cool stuff. So, so Hannah talk about Argo city autopilot. You had it. Um, so Argo city autopilot. It's still a fairly new project. It's part of the Argo project, Argo labs. Um, so if you actually head on over to, if you, if you just look at their GitHub, you can actually access that. Um, and what I'm going to be doing today is telling you a little bit about Argo city autopilot, but I'm also going to be doing a live demo as far as how to use it. And I'm going to be showcasing you how to use multiple clusters, how to use, you know, how to create an application, have multiple environments and then we're actually going to make a small change and promote that change from staging to production and show you what that looks like. Um, so I guess just to start off a little bit about Argo city autopilot. Um, I like to call it like the, the Kickstarter for, um, you know, get ops deployments because like I said, being a prior.net dev, I think whenever it comes to like changing a deployment process, it's pretty intimidating. It's a little daunting. Um, and so I think that's why autopilot is so helpful. And it was actually, believe it or not, it was actually developed by the code fresh engineer team, um, engineering team. They, they were the ones who started this idea. Um, and what it is, is it's essentially a bootstrap that creates a directory and its structure so that you can actually manage all of your Argo CD applications using get up. So starting from your repository and it just gives you a really simple pattern on how to like make updates to your application, how to promote change changes. Um, and it just makes life a little bit easier when you're managing multiple environments with multiple clusters. Um, yeah, I imagine like coming from, um, coming from.net, right? You like, it's like, Hey, we have something better. Instead of touching one things, you get to touch a hundred things. And you're like, how is that even better? Like how, how, how, you know, how is managing deployments that way better? So, um, so that's why there's like projects like autopilot to kind of help ease, you know, not have to know, you know, all these little bits and pieces that you need to touch. Cause I think get ups as a, as a, just a whole sometimes seems more intimidating than it really is. Um, and so for me, I think get ups, it's, and I'm, you know, I'm not going to explain too much about what it is. Cause I feel like if you're here, you probably have a good idea of what get ups is, but, uh, but yeah, but for those who don't, and are just like want to get it, want to start deploying using Argo CD. Um, and then our managing, like I said, multiple environments with different clusters. This is a good solution. Um, so I'm going to start sharing my screen and I'm going to just kind of walk you through a basic install with the bootstrap. We're going to create, um, an application. I'm going to create two Argo instances, one for staging and one for production. Um, and then what's cool is I'm actually going to be using an open shift cluster for our production environment. Um, so Christian helped me out with that. Which we like here. Yeah. Exactly. I know. So, um, so yeah, so I'm excited to show you guys that and now we'll just kind of dive into my terminal. Um, and then those from you who, like I mentioned before, um, Argo CD Autopilot is part of the Argo Proj Labs. Um, it's got a very simple overview as far as installing the CLI. Um, and then once you get the CLI installed, what your first step will be is the way that Autopilot speaks to your repository is you're going to get a personal access token from your GitHub account. So you simply just go to your GitHub account, go to your settings, developer settings, and then you essentially are just going to export that token. Um, and then, so I've already done that and then what you're also going to do is what's interesting about Autopilot as well, you have the option to use an existing application that already exists within your GitHub repository, but it'll also actually create one for you, but it only catches it just private. Um, but it's nice that it kind of just takes at least that stress away from you as well. So if you're just getting started, it's pretty simple. Okay, so I've already, like I said, exported my token. Um, I also exported this repo and now we're going to actually go straight into this bootstrap. Oh gosh. Sorry, everything got really big before we got on, so. Yes, no worries. There you go. Alright, and so I'm already on my OpenShift cluster and so as you can see, it's actually newing up our Go CD um, and it's something I wanted to show you guys while this is doing that um, within the project itself, it has these two resources, right? Because I saw someone that even asked a question before like, well, do I have the choice with our Go CD or Autopilot? Our Go CD is incorporated into Autopilot, so you're actually able to install our Go CD from your Git repository. Um, so it has these two resources which, like I said, it's installing our Go CD and it's also installing application sets. So, that's, that was really cool to me because I was like, how is it doing this? Okay, we're right. It's bootstrap. Um, so there, so we're still going to wait for this while it's still going but just to kind of give you a little overview of what it is, it's creating my name space um, it's, it's referencing this repository um, and it's just installing, essentially the application and, or the project and the directory structure. So, we'll look at that hopefully that'll, that'll happen soon. There we go. There we go. Right, bootstrap application. So, this is um, this is um, essentially kind of takes the guess work out of how to get started, right? So like, for those who are always um, there's people always asking me how to get started with like our Go CD and it's really the um, um autopilot is like a really good way to kind of just like, just get started and just get everything that you need um, all, you know, all in one place. Exactly. So, what we can do now is what it does is it actually provides a port forward command and then a password. So now we can access the Argo CD UI so I'm going to do that right now. Oh, so Daniel's on, by the way he's one of the folks we don't know. Daniel is from Acuity, so another Argo, big Argo user. Um, he's on the, so if he's waving, I'm waving back. Hello Daniel. Thank you for joining us. Cool, cool. I think because let's see. I think because I'm Is it not forwarding the port? Yeah, here from server. Hmm. I just didn't want to do it in this terminal. Hmm. Let's see, let's see. Oh, I wonder if you're not logged in in the other session maybe? Yeah, essentially. Sorry about that guys. Oh, no worries. Everyone here loves a good debugging. Right? Everyone here loves a good... I knew it would be some hiccup. So admittedly guys, thanks. This is my first live demo that I've ever done. So it's essentially, I'm like, oh, oh, no. Okay, great. Excuse me. NoemGal said maybe Yeah, Noem. I was going to say it looks like a code fresh person. Maybe your current context on the new terminal is different than Kate's cluster than the one you installed on. Correct. He's right. Noem, you're right. Thanks, Noem. Um, but let's see. So this is my this is my open shift cluster. Um, Let's see. So Tiger says, live stream driven deployment. I like that. No pressure. No pressure. You feel like you're sweating right now. No, it's fine. That context needs to change so you can forward. Yeah. There we go. I think so. Crossing fingers. I know. Yeah. I'm going to go over. Well lead. Yeah. Well lead is talking about the flamingo, which is, I would, I would, I would want to get, um, I'm going to butcher this name. Chen with Chen with. On actually on us on a stream. I want to, I want to hear more about that, which is a flux subsystem for Argo, which is going to, which is kind of, um, I think first of its kind. So that'd be, that'd be cool to have them. Fresh. There we go. Oh, that's what we want to see. All right. So I'm going to put in my admin as my username. And then it already provides me my password and plain text. So go over here. Alrighty. Oh, look at that. You already have stuff going on. Yeah. So essentially this is, this is what's so cool. I think about autopilot is that it really does just take a lot of the work out from you. I don't know. I feel like if anybody has ever gone through the Argo CD getting started guide and you're a newbie, right? Sometimes it can, it can be a little confusing or you're just not sure how, how to get started. And I just think it really is just such a good foundation and a base for people who want to get want, who want to start playing using get ops. Okay. Yeah. I feel, yeah. I also, so like that's like good, good and bad, right? So it's, it's, it's bad because it's like, when you are trying to, trying to get started, it could be a little frustrating, but it's, but it's like kind of like the design of kind of Argo in, in a way, right? Because like, it's like, that's how like, it's like, you, you and I were laughing about like the quote I did for like Argo CD is kind of like, kind of purposely dumb, like, but I mean the good way is like, it's purposely dumb. Yeah. It's just like, it's, you know, like, how do I do this? Well, you're gonna have to build it. How are you to do this? Well, you're gonna have to build it. So, which is why projects like this exist, right? Like, so autopilot tries to, tries to help you along your way. Yep. Exactly. So now what we're going to do, we're going to actually create a Argo CD project for our production. And so what, what a project is, it's, you can think of essentially as an environment. So what we're going to do is we're now creating this prod environment. And this is going to be our instance of Argo CD that will essentially be like a default, a default destination. And you'll be able to see this in action once we actually get to the staging part. And so now what I'm going to do is I'm going to install an application to prod over here. And let me know if, here, things are so big so I apologize. Okay. So what we're doing here in this command is we're creating an application. I'm actually going to reference the example that they have within the autopilot project. And then I'm assigning it as prod. So we're just specifying that for this. Okay. That's pretty cool. Yeah. You just hit enter and it did it. Nice. Yeah. And what's also really cool about it is that just by specifying this is prod, it's we're specifying our repo and where our application manifest are as well by pointing it to our GitHub. And like I had mentioned that demo app from the Argo project that you can use and spin up just to get familiar with this. And then also what we're going to do next. I should note, within this repository I'll show you that in a minute. It has already a manifest and it's using customize. So if you're not familiar with customize it's similar to home. It's got a little bit more flexibility and it essentially provides a basin overlay and that's actually how we'll be making our changes across the different environments. So now what I'm going to do is I'm actually going to create a demo instance for staging. So... Yeah, I'd be curious to see the repo when you show it in a little bit because that's really awesome. It takes a lot of the guesswork on trying to like create bases and overlays for your environment. It's just like, if this tool just did it for me, fantastic. Right? Like the less thing I have to think about is like, no it just does it for me because it could get kind of confusing trying to No, it can. Yeah. And I remember I actually... I actually... Oh, hold on. Let's see. I'm going to delete. Sorry about that. Yeah. Control C. I know. I know. So something I wanted to mention with customize especially it's... I think so with autopilot right now it supports manifest for customize just plain manifest. I think in the future they're hoping to also support Helm templates so Helm charts. And I don't... I think there's currently an issue for that within the project itself so if someone is eager to contribute to that or it also is like hey, like yeah, I'm a home user I want to use this. You know, what can I do to help out? I'm sure the engineers would love that. And so also now that we're starting for staging and I canceled that was because it's like oh crap, like I don't want to put this on my production cluster. We want to use a staging cluster. So I've just kind of newed up just a plain Kubernetes cluster. Nothing really fancy to it. And so what I'm going to do now is I'm going to paste that command that I had before and we're going to create the staging project. And something to note about this. I keep doing this. You can tell that I was testing this and I was not specifying specific things but something that is really cool about this ability is that I'm actually able to include a port forward so it's going to forward to the same namespace as Argo CD so that I can actually use the cube context for the staging cluster and the port forward command basically tells that cluster how to connect and deploy. So let's see. So we're going to use just a Docker desktop. All right. So like I had mentioned the CD oh whoops let's see get token repo not set oh this is it's another context issue let's see um CTL context let's see if anyone can help us out here like if anyone can do that from memory I've always impressed right I always have to type it out myself it what is it current I think it's context I always have to tab through it mm-hmm oh whoops current context I think yeah current context yeah Docker desktop but I wonder Christian you might be actually able to answer this question for me so when I was using an open shift cluster I noticed that when I wasn't able and I want to preface this I am still a newbie so using a terminal is still new to me but I guess I'm curious with this open shift cluster I'm able to access it locally but I I'm having trouble I'm having trouble within the same terminal accessing my other contexts and so because when I try to when I for example in here keep CTL or keep CTL context I'm only able to view my open shift but I do in fact obviously yeah I wonder if you do an echo of of dollar sign kube config I wonder if you're just using different kube config files maybe capital capital kube you know all caps yeah kube and then I think it's underscore no underscore it's just kube config it's not the underscore if you echo that and I would do that in each terminal and see if they're the same okay so that's your open shift that's the one that's using and I bet you the other one is using another file yep okay well let's see I if anyone well so like you could log in I guess I'm just gonna say if anyone has a fancy jq to merge these two files I'll give you a free t-shirt if you can figure that out but I can actually do this pretty quickly if you could do an oc login on the Docker desktop one if you do an oc login of whatever the you're gonna have to you need to change that api example yeah see if you go up to the window above you if you do an oc oc status yeah let's do status it should tell you yeah that's the api right there okay yeah tiger says I just cat the file and paste it into I'll let you but that's not as cool like that you gotta show your geek cred yeah that's funny and then you're gonna need your kube admin password somewhere oh interesting if you wanna try said that you can specify different kube config files oh if you export you never tried that I haven't either that's a good idea though if that works then you get a t-shirt Waleed although shipping to you Waleed is very expensive just let you know where I think he's in Saudi Arabia I believe correct me when I'm wrong but we try to send him that would be that far socks once and that was really expensive let's see Saudi Arabia okay so yes virtual t-shirt we'll figure out a virtual t-shirt something server but any data we're just doing a demo alright now if you do the the context okay like if you get whatever that context yeah it should show it there we go I can see all my clusters sorry there's a lot don't judge me I was judged by my colleagues it was so funny there's like so many clusters out there there really are okay so apologies now it's kube config set context right or use context yeah there we go oh my goodness thank you everyone for your help yeah look at that it's a community it really is I love it yeah we all did it you know we all took apart we really did okay now and I was worried that this demo would be too short oh there you go apparently not get token yeah I have a feeling that let's see I need to export it yeah I think that's what I need to do real see we all promise to close our eyes ready alright everyone you can take it off window yeah yeah but it's funny one of one of our engineers is giving me some tips so just looking I was like oh okay yeah so it's the terminal need to do it too okay I see okay well I'm tempted to I don't want to start from scratch but let's see if I could do this quickly okay I'm gonna export my token then we're going to export the repo okay well lead but I'm testing your config out here in a separate window I want to prove out his theory here oh let's see oh no I did it I did get an error okay not find pod with selector that makes sense I'm tempted to do this to start over how do you do that no that's also a good way to that's also a good thing to show right like show users okay let me start over yeah I guess I can I think I know what the problem is so if everybody would be okay with that I can try to do this really quickly alright so I'm going to exit of this and let's see let's go to my repository let's go refresh okay so it did create the demo app and what's nice about this is that like I mentioned it has your app and then it also includes your base and your overlay so we've only as far as the instructions that I've shared with you we've only created the overlay for prod but once I am able to scratch this and start over again you'll see both overlays for and staging and then we'll make a change and promote that and we'll get it done so give me one second I'm going to delete this or I can just create a new repository okay well that's one of the things I read about autopilot you can either create a new repository or just point to an existing one right it'll take that cool yeah so okay I am going to use the and of course let's see let's make this a little bit smaller so I can be quick use context yeah someone said by the way it works export thing works which I thought was crazy today I learned something today so it's always it's a two way straight here right it is I know I learned something and I think it's really cool and when we get off I'm going to tell everyone on the slack channel here at red hat I'm like did you guys know this I'm going to look like a dork anyways and also yes Waleed earned an NFT virtual t-shirt so well I'll try to get it to you somehow we're red hat we're working on actually some cool t-shirts for kubecon so I won't forget about you Waleed I'm mad at my word so what I'm doing right now is I'm just going to delete my name space Argo CD from the open shift cluster and then what I'm going to do is I'm just going to start over again and go through the same steps I already went with went through with all of you and then now that I've got I was actually a little worried about this terminal problem I was like I don't know but to say the least I've been able to get something up and running before this session ends so if I'm quiet for a second I apologize yeah no worries yeah you gotta see figure things out I almost I should have done a recording I almost did that last night just to be safe and I was like no it'll be fine yeah I've um back before you know back when we used to travel pre-covid that was like one of the things that we always tell each other right like for those who are presenting is like make sure you have a recording before so because also internet access I don't know if you everyone there remembers internet access for conferences absolutely terrible so actually I feel like Christian you're never going to invite me on here again I was thinking I was like oh geez like no it's no it's fine actually I embrace breakage because a lot of the times so we're and this is like feedback that I've heard like over the years is like a lot of the times like they end users people who are consuming like content they're always like it always seems so perfect in the demo but like when I try to do something things are always breaking and like it kind of um I got the feedback before is like it kind of makes me feel like I'm dumb and it's like no like we're dumb off camera a lot of times and so which is why like I like this format on twitch streaming is like I want to I don't mind being dumb on camera like I I've broken stuff many times I've actually done multiple streams until I get it right um yeah so it's um it's it's uh it's which is why I like like the twitch format right it's like you know fine let's show all the ugly parts um it makes people feel like okay like maybe you know maybe you know not getting it right away is all right yeah yeah it's true and I think for me I I get a little bit of stage fright because I'm like oh it has to be perfect but uh ultimately yeah it's it never it never really is it never is yeah and then that's okay yeah like I I I rarely get things right the first time right we shouldn't yeah make it seem you know which is why I'm like very anti-webinarist like because webinar is always like you can mention that yeah everything's perfect it's like well not all the time people like people like seeing humanity right of course yeah yeah it's true okay so let's see I am just finishing okay there we go game space voila okay great we had a clean cluster um okay now I'm going to quickly try to start over and export the token again and as well as the repository don't worry I'll share my screen soon it's yeah well I mean yeah you're exporting tokens and all that that's also another worry that that that's that's happening to me a few times where I was like well I gotta delete that token now I showed everyone live I know that's it's oh gosh it's the worst and the important security it's important yeah security is important right yes that's absolutely true I remember even so um I think everyone um I always tell this story and I hope he doesn't mind that I always tell the story but everyone knows Steven Augustus right uh from the CNCF uh working at Cisco now he was doing a stream on um uh I guess at that point it was heptio um tgik where he tried like the whole stream he tried to like not show his token and like at the very end like he did something and I could show all his tokens I messaged him privately I'm like oh well now now you have to rotate all those poor guy it does okay are we I think we're making progress let me make this bigger for you guys yeah you'd make it a little bigger maybe expand the screen maybe a little bit you got it here we go you probably have one of those ultra white screens I would imagine I do yeah so yeah I'm like so it's probably smaller on your end yeah it's probably huge for you but for us it is it is yeah so I'm like you let me know okay now let's do another port forward got that beautiful okay we're gonna take our password um so I'm not showing you guys anything new 8080 here it is oh wait admin as our username and I'm gonna paste the password from the terminal I'm gonna sign in alright so it's still doing this thing here still doing it same so yeah so this is interesting so I have a question here yeah please there's this process here called root what is what is root that's a good question um click on this oh no okay um I know I'm like well um root is essentially it's your root application which I feel like is a given but um I okay I see it has like an application application set oh okay so it's kind of like um it manages all these little things right like application set application project and I think I'm hopefully let's see yeah let's look at the errors yeah if you want to check out the errors we can check the errors together yeah see app red hat okay created this just wanted to make sure make sure all of it stuff there yeah let's go back to application dashboard we are missing something hmm um yeah what does the error say on root what is um I'm curious now no no no I'm invested now like I'm all I know oh it looks like it's waiting for some sort of deletion error time out hmm it looks like it's waiting for some um what do you call it service to come up or something yeah running syncing let's see let's take a look at the is there any pods that are erroring out good question okay oh so I have a question did you bootstrap the wrong context no oh sorry no I did not okay cool oh yeah I see it right there default yeah hmm but we want to they do a dash a right get or capital a right get pods dash capital a do we have any errors there it's waiting man I really want to get this working before oh yeah oh I'm rooting for you here we go okay so we are all right there we go all right so that looks good everything's running yeah our go CD my applications and my controller the server hmm maybe it is the cluster resources yeah maybe it is an issue with that maybe yeah bootstrap bootstrap continues so maybe bootstrap isn't finished that application hmm I didn't get any errors when it was bootstrapping yeah because it says it checks it right right right I wish I wish I had a solution off the top of my head yeah there was a warning at the end well each said there was a warning at the end so that's was that oh I think what happened was I installed autopilot while the previous installation was still being deleted ah finalizers always yep I thought I deleted those oh no yeah I think we've actually had a discussion about finalizers yeah finalizers always for those who don't know we all we all hate finalizers um I mean they're good for what they do but when they get in the way right right exactly um okay well this means now we have to have you come on again I mean now that's just I think this was your plan the whole time it's like how can I get back on again let me well now I'm determined everybody who attended I'm sorry if I wasted time but like now I just want to create a video this is how it should be this is how it should be yeah because oh my goodness um yeah so yeah I definitely yeah no no worries no no worries and um you did want to talk about a few things right oh we did I did so I do want to you know I don't want to push you in any direction no no no no yeah I'm like you guys have already sat here you know waiting for me to troubleshoot I won't make you do it again um but something that I did want to mention is um the open source team at CodeFresh we've launched a get-ups fundamentals course so if you're joining us and you're like I don't even know what you're talking about like I don't even know where to begin um it's this is a course that's free um you can sign up for it and you also can receive a certificate for completion um but it really does highlight essentially just the basics with get-ups and it also provides a really nice introduction to Argo CD um so I if you haven't tried this yet I definitely suggest it and I also wanted to share that right now our team we're currently working on a second course and this is going to be a little bit more of like an intermediate level um so it's going to be a step above just the basics and we're hoping to include things that are applied to scalability such as like get-repository creation strategies um promoting releases across environments um advanced declarative setups and app sets um apps of apps um and I think Argo workflows because I think there's a huge yeah a huge need for that and um even myself I've I've definitely taken some courses in workflows and um I try to work with it as much as I can but there's still a lot I don't know and I think there's a lot that people want to learn more about so I'm excited to to share that with everybody and we're hoping to have that probably within Q2 and if for anybody who's not like familiar with quarters probably within the next couple months um so so I'm really excited about that because that's fully created by the CodeFresh team and we just essentially want to give back to the community and we want to just help everybody get on board when it comes to get apps and especially with Argo um because it really can just make your entire whether you're using it for like I said your workflows um or your deployments I think it can really benefit you and your organization so um so yeah and also just any kind of project you're working on on the side I think it's it's fun to learn so so yeah it's really cool so so first and foremost what Leit said plus one for the course gone through it it's fantastic I agree I told Hannah I slacked her I told her this is fantastic course everyone actually some of the um some of the new engineers that we hired for OpenShift getups um which is um you know we use Argo CD on the back end they said like oh this course is amazing so like it's really great like a getting started course is it still free so Dan has always threatened that it won't always be free so so it's still free okay yes yes get on get on it before Dan changes his mind he keeps threatening that it's not going to be free for long so register yeah yeah so please yeah definitely register and also just like if you want um I'm on the CNCF Slack uh you can find me under Hannah Selickson or you can tweet at me tech with Hannah um because I'm always want to look like I always want to know what you guys want to learn um I always want to know where is there like a gap um what can we contribute what can we help with um so yeah just just feel free to ping me yeah yeah and then and also I'm always on the on the same boat right it's like you know we build these things right like we as advocates we as you know as um experience engineers like we hope you like it but we want we want we love that feedback right I don't know about you Hannah I love the feedback ugly all of it we just give it all of it because we you know ultimately we just want to build build for you guys so yeah so definitely check that out check out the um uh the certifications right we we dropped the uh the link in chat um which out to us you know any one of us right anyone to code fresh uh myself I can give you the link directly um yes yes Dan said my shirt is awesome because yes because yeah this is the one you guys you guys gave me so I do I am I am top topical here with um with with the t-shirt so cool cool so um anything else anything else you want to cover no no thank you and I'm I'm sorry I couldn't get it working for you guys but I will like please hold me to that because I would like to share this with you and just you know just just get it working yeah yeah that's cool so then that this means that you have to come back on and maybe we'll maybe we'll coordinate yes we're matching twins we're matching twins cool cool so um so yeah so thank you everyone for joining um you think thank you we think you're all for joining remember um I'll I'll be a kubecon um so Hannah may or may not um so we might we'll see right um so so yeah so um next time I'm actually taking some pto so uh they're so it'll be a little bit before we come back on but I have some cool guests lined up and some cool hacking sessions with like Argo events Argo image updaters um so we'll be back in April um April 7th so um so yeah so um I guess yeah with that everyone um stay safe out there and as I always say if it's not in git it's only a rumor so bye everyone cheers