Yeah, yeah How about now folks can you hear us anything anything there we go? I can I can hear it now All right, awesome. Yeah, I can see the sound bumping. Yeah, so right there we go. Cool Now that we go now the zoom is back. We can read well. We could retell all our jokes. Yeah So good morning. Good afternoon. Good evening. I think that's what you get up scotty the galaxy Sorry about that like Christian was away.  I'm Chris short host of the most Christian Hernandez the the get-ups guide to the galaxy captain here I'll be your captain on this journey. Yeah, as we were saying so So, yeah, I'm doing so in case you guys didn't hear Chris asked how I was doing doing well excited about a few things right so excited about Cubecon coming up right?  Yes Exactly. Yeah, because I was talking to someone about like, oh, yeah, like my daughter went to New York You know for the afternoon and I was like, wait a minute. We're in Boston. It was like, well, yeah, technically you can take a train Yeah, it's like yeah here here in LA, you know, you can drive for two hours and still be in LA So, yeah, you know, I'm a local Yeah, but But the drive to downtown is gonna be a big drive for me, but I'm still excited. I'll be there. It's a hybrid event So excited about that excited about the get ops con Yeah, right where I should I should probably start sharing my screen here because I do have I'm trying to do the sully thing of Topic topical sure which talk about what's your CPU up to you got something running in the background there I might let's let's see here. I think it might be Is it probably zoom? It's probably zoom. It might be also chrome because you know how chrome likes to oh, yeah Yeah, maybe that'll be better here. Let's check it out. See here CPU is x org. So well, that's probably zone. Yeah, that's probably has probably zoom doing things here, but yeah So here I'm also excited About a get ups con I mentioned it last stream here. It is says a day zero event Right. So October 12th Which is I think a Tuesday. There's two days zero events, which is crazy. I think I think I think they're calling it like pre-event Pre-event or something like that because it's not days are any more because there's two days. You're rose. There's two days. Oh, yeah, zero and zero and double zero and so This is October 12th, which is Tuesday. You have Planet time register if you can't make it live. It's a hybrid event. So you can do it virtually and just to kind of the quick shout out for for me, I have a I have a keynote talk. So if you do see me in person You know, I'll be talking about some cool stuff. I'm talking about actually pipeline is pipeline as code, right? Which is something we kind of talk touched a little bit about about tecton Maybe in a future episode after I do the you know after cube con I'll I'll touch on it But if you want to get a sneak peek of a pipeline as code and how it Interacts, you know, how in get ops, right? How how it'll you know fits in in in the get ops methodology, right? You know tune in right either virtually or if you're there You'll feel free to say hi. So I'll be there. I Should be there and less other than less something happens, right? Yeah, Chris should be there, right? We should we should when it actually I I am somehow doing three-day zero things on the same day So yeah, this should be interesting for me. That's a lot of running Yeah, because I have other stuff to do on days or events and I'm like, you know, it's like I'm not to wear my jogging shoes It's run all over the convention center. Yeah, you know, I didn't think about that. But yeah, I could probably bring them Probably be chillier ish. Maybe in San Diego or Los Angeles. Sorry. I don't know. It's been it's been warm So I don't okay nevermind Yeah, it's it's been kind of warm as of late. So but October it should be a little cooler But still warm for those literally in a month. Yeah, I'm flying out. Yeah So there we go. So get up scon make it if you can I'll be there in person. So if you can't be there virtually still open Another thing I kind of wanted to bring up there's kind of this cool tool actually I think you sent this to me Yeah, no, this is definitely one. I recommend it to you This is and this like so for those of you don't know We're actually Chris and I are actually in the same team Technically, right? They did some reorg but like we ended up on the same team anyway Under different managers, but you know, we were in constant communication and he and Chris is always sending me things And even though I don't respond Chris. I do take a look at them. I know you This one I really really like right so this is Octopilot from daily motion, right? So a lot of cool stuff coming out from from companies that are actually doing something like into it Right, I can do it obviously has Argo City And daily motion has something called octopilot, right? And so octopilot is Helps you in your get-offs workflows. So by managing your pull requests, right? Which sounds a little crazy at first, but yeah, yeah So it's essentially about it.  Yeah, this makes sense and often it actually offers a Great, it's a great use case. It solves a very very great use case so essentially what what this does is it manages your your PRs and your You know, all of your workflows, yeah approvals all of that via a Via CLI or an API right in in in most cases Right and it aims to be like a Swiss Army knife, right to propagate changes. So the idea of being You know this example here, right? He's you know, you you pass a token obviously and the repo information But you said hey updates is YAML with this With this information right you can use white queue as well We're saying, you know basically regex saying hey, yeah, you know take this stuff updated like so and for the workflow I'm trying to think of it like a great use case is like image updates Yeah, right like you're doing those need to happen behind the scenes. Yeah, exactly. So like update You know you do an update your CI it happens. Cool. You have a new image build. Okay. Well, like how do you propagate that out? that Argo cuz like, you know essentially Argo acts on a repo well in you know, you need to make a PR and manage that and how do you do that automatically? There is a autopilot that has that right and it has being able to essentially manage your get workflows You know in a get-ups friendly way, so I think this is really cool I'm oh, this is one of the neat ones that I was like. Oh, I got this Christian. Yeah. Yeah, this is this is great It could actually Support for manipulating encrypted files as well, which I thought was really really cool like a really really cool So kudos to the guys daily motion Who one came up with this and to who open source? This is great a great tool So I'm pretty sure you dropped it in the chat already, but yes, I think When you're Something that can help you when you're when you're automating some of the stuff, right some of the Some of the things like okay. Well, you know Argo CD Acts on a particular branch or a particular get repo, you know, what happens until then right because that's the tail end That's the easy part right Argo City is just applying those manifests Well, how do I get into there and this is a tool that can help you to do that as well? um And oh, which is pretty, you know, which is it's pretty cool because I actually see this here the yq tool They actually just like pull in the actual yq Source code right so they could Yeah, yq is to uh yaml as jq is to json. Yeah Which I like I like to post that you do it on twitter you're Jason on isn't human you like json is not human readable. I'm like, thank you someone said it Someone responded back with that tweet. It's like, how could you say something so bold yet so Yeah, exactly. Yeah, it's like, oh my gosh Yeah, which is it's just which is like i'm a yq guy right i've always been But you know, json isn't meant to be made human readable, but And it's not it's definitely not right But some people it's amazing how many people are like well, I can read it It was also amazing how many people were like well compared to like 20 year old thing. It's way better. I'm like, yes Yeah, yeah, and be better better and still be Not great. You know, yeah, exactly. Yeah, yeah, like, you know, um writing a bike Is better than walking it'll get you there faster, but it's not Not a speed train, right for example, right, exactly Just said I could read xml. It doesn't make it human readable. Oh, yeah. Yeah, exactly I can read xml. It doesn't make it great So, uh, so octopilot great great stuff. So, um I like I like some of these things that you sent me chris. So keep keep sending them. I I have a back. I have a backlog. So so I just got to octopilot. So there we go. So there you have it Cool. So today's topic, right? So today's topic. Um talking about Opuship get ops version 1.2, right? So 1.2 actually released. I want to say Mike like a month ago or a couple months ago Maybe even more like eight weeks ago. Um, okay released, right? Um, and I kind of want to go over some of the things the updates we made that You know, I This may seem a little late because 1.3 is actually on the horizon But like but but as you know chris, I we had guests. We had other topics to cover or we only have an hour. So it's Um, but we're finally here. So I kind of want to go over Uh, some of the things that we came out with with Opuship 1.2 um Opuship 1.2 came out with version argo version 2.0 Right. So that was like a major thing that we had there like in a major release of argo Um And so I want to go over here We're gonna break the zoom window with what I'm doing right now what I'm trying to make a more readable for y'all Yeah, it's just try to make it and I'll make this a little bigger too and I'll actually How do I um Command or control plus plus depending upon the device There we go. I'll send you the chest. So I'm actually going to go over Um, the release notes, right because the release notes is the best way. Um I'll let you say for this information, right? So, um So, uh, so support matrix, right? Um For 1.2, obviously argo cd is ga. We're still tech preview for with some of the stuff like application set um Stuff like cam is still in tech preview to get off service, which is like the um the service that Manages cam right because cam is the the cli but the actual service that manages cam Um, it's still in tech preview. Uh, we haven't talked about cam much Touched on it a little bit Because like there's a lot of stuff still in the air With cam maybe I'll invite bows to come on and in demo cam a little bit more Go a little deeper. Uh, so it's tech preview, right? So meaning that it's not 100 supported, right? It's the best effort sort of thing Not fully baked. Yeah works not fully baked. I use application set that should be I don't know when that'll be ga, but that's you know, the acm guys are using application sets in production. So, yeah So, uh, some of the new features, right?  Oh, so it yeah, I would kind of expect Yeah, so like if you're gonna disable the default argo cd instance do not Name your namespace opus should get ops. So but everything else is is cool, right? So, um Then you can then deploy your own um Instance right of our go of argo cd in your own way. So, um Another good cool feature here is the, um Requests and limits are now configured for argo cd workloads meaning that Um before there was no, um limits Oh Or quotas it for for the actual, uh, installation of opus should get ops, right? So like it was able to consume The entire cluster resources. Yeah, if you wanted to, right? Yeah So we We um, we figured out and capped it. Yeah. Yeah, we capped it, right? So like all the all the components of opus should get ops now has uh limits Onto it and the actual namespace opus should get ops namespace has a resource quota set to it. Um this caused a little bit of Unforseen consequences. There was a lot of people who actually were deploying stuff inside of opus should get ops namespace, um Which we never intended Right, but we never actually told people not to do it But like we we assume people right wouldn't we wouldn't do it. Yeah. Well, we kind of have that running Well, with at least you and I do Um that running thing of if it starts with the open shift dash don't mess with it like don't mess with it Yeah, don't put stuff. Yeah. So that's a really good rule of thumb. I think probably soli says that a lot um Is that uh If it starts with open shift the namespace starts with open shift don't put anything in it. So um, so don't put anything in it That's just you know, stuff like this happens, right? So, um So that so then that's that's that's it, right? Um It actually also this caused the issues when you're upgrading from version 1.1 to 1.2 Which uh, which is another section um Which i'll go i'll go over in a little bit.  Um, yeah, so that's So that's really cool. So then you can use open shifts authentication to slog can so, um Before there was no support for route sharding um So for those of you who use open shift And you don't know you can actually do route sharding. So, um You know, you can have multiple routers and depending on the application you can send it to a different router. Um, Our argo cd didn't know how to handle that.  It's a key value pair Right. So for this argo cd You know put it on these labels Send it over here so, um And this here This is probably my favorite update Um for open shift get ops Oh, um, yeah, and which is which is part of the the demo I'm gonna do right so, um So now the open shift get ops operator will automatically grant permissions Depending on the labels. So that let me explain what used to happen, right? So, um There was a cluster resource. There's a cluster Argo cd, right, which is open shift get ops, which we talked about a little bit about earlier um And it comes with like I think the ability to only read resources but not apply it.  I guess I should say it was up to the admin to set up those RBAC rules, right? Like what can argo cd do? um You know, I have an opinion on that right like if you have argo cd managing your cluster It needs cluster admin, but a lot of people don't like that.  Yeah. Yeah, at least privilege um So now you can actually what you can do is you can label your Uh your namespace Um with this, uh, is it a label annotation? It's a label. So you can label your namespace with saying, hey um Let this uh argo cd instance manage me So So then argo cd will then do um the operator will then put the proper permissions in order for argo cd to manage that namespace So you can kind of have um this kind of cool situation where um You could deploy argo cd right with this least privilege and then um Annotate, sorry, label the namespaces where You want control so you have um So you can say hey, I installed argo cd or a cool.  So that's um This is cool, especially for If you're doing something like um What we call namespace scoped argo cd meaning that There's no uh, there's no cluster argo cd, but there's like an argo cd for my specific namespace And I create another namespace and I want that argo cd to manage that namespace Um, I just label it and I don't have to do anything else. Um, so this is really cool And I'll I'll show this in a minute. Um How this works out because it's actually really really cool. So um some of the things that were fixed the um For let us see we'll get stuck in out of sync status. Oh, yeah, so this um There's a this is your issue. I don't I don't know if you want to link this first but if you if you put the um The link in the chat people can take a look at that but um Like if a user created an additional instance of argo cd managed by the default instance Some things will just get out of sync, right? Even though it's it's synced up some of the um, some of the things will will uh Will end up in out of sync status. So do they they fix that, right? So, uh, some of the unknown issues, right? Um So, uh, when you delete an instance, right the um, the managed by label Um are not removed, right? So like So basically when you deploy an argo cd instance, and then you delete it that annotate that label still stays in place to Any namespace that it's managed by so that um, so you just kind of just take a note of that, right? Like if you're deleting names, uh, if you're dealing at argo cd instance, you may want to go back to those namespaces and remove that label But we know that That's getting uh, that's getting charquet. We'll lead there we go. It's it's late over there by him or early depending on how you look at it Depending how you look at it. It's very very very late or extremely early. So it depends whether you're late to bed or early to rise. Um So this is what I was talking about before the resource quota has been enabled um so, um when you upgrade from, uh Open ship get ops from version one dot one to one dot two um some of the applications Was getting um killed, right? Because yeah, so, um and then it actually Spun up it would I you know, there was a ton of replication controllers that would spin up because It would spin up and it would get um killed.  Um Uh, so the the the transition from one dot one to one dot two wasn't 100 clean. So that was uh, it was a uh, Known issue. So uh, which is why we, um Say one don't deploy anything and open ship get ops, right? So that's that's one thing He's done and and to um Always test your upgrades, right? Don't just like automatically upgrade from one version to another for any operator, right? That's not just Um, oh, I mean, yeah, make sure you got that dev environment. Yeah. Yeah exactly Uh, not to say that even if you're an ops person, right? Like you should have a way to test those Yeah, wait to test those those operator uppers 100 percent. Um, and because like in this instance we made a mistake, right? Like Hey the The resource quota we applied Made us Not be able to upgrade, right? So like you're just stuck in this weird There's like many versions and like state of replication. Yeah, state of limbo. It's always always um always bad. So um So, yeah, so that's kind of just kind of the lowdown on the one dot two release um So let's talk about uh this um This update here my favorite update, right? So let's go back to managing right managed by so um, we'll go to a use case here So I'll push a cluster, right? I'll uh um I'll update it here. So I do I'm gonna log in as a non admin, right because this Effects non admins come on. Here we go. You can do it. I believe I believe that the cluster get cold. We don't know The cluster running. I know you better catch it. You better click Is your cluster running? I don't know. You better catch it. I think it's running. It's to go here. Um, let's see Yeah, it's there. Uh, let's just reopen it sometimes Yeah, it doesn't like it. Oh, oh, so braided silver went through the uh home killing experience Yeah, that home killing thing is it it it happened to customers too. That's all that was it was a It was a fun upgrade experience while you'd ask what a single node cluster do for like environment upgrades testing and Um, I mean, I maybe yeah If if the single node cluster is big enough right to run the yeah If the cluster is big enough and then if it's a close enough representation of production Yes, like you shouldn't have this pristine single node cluster to test an upgrade for it, right? Like you have Like your argo pipelines You know installing operators or whatever it is that you have in prod You should have in that single node cluster too. So that's gonna be A lot of stuff you have to think about. So yeah I mean if you really want to make sure operators don't break your environment kind of thing But yeah, yeah, the test like v1 versus v1.1 It might work Yeah, that's true. While he does say close enough to production is becoming impossible with time for on-prem. Oh, yeah, that's it's yeah Yeah, I hear you. Um Yeah, it's you know, there's trade-offs and you got to decide on those for sure Three node clusters single node cluster. However, you want to test just just test it, you know Yeah, please sugar on top Uh, well, I thought it was a cookie issue, but I don't think it It's not a cookie.  Come on Well, I mean it I wanted to show the ui, but Now my cluster is running fine, which is weird because uh So I see a street thing Yeah, look at that It's open up chrome and see if it works in chrome sometimes it'll work in chrome The where's the is that it? Yeah, it is. Okay I'm working on another window here So Brandon Silver says I think to test if you are at risk for bugs from the upgrade impact in your workloads You should be able to verify that by replicating on single node cluster I'll tell you if you'll hit a it'll tell you if you'll hit the bug But you won't see a realistic replication of what would happen in production if it happened Yeah, like you won't know the impact You just know thing happened with operator And yeah, I think not necessarily the the you know after effect. That's a very good point So it actually works on chrome. So I'll just bring that over here. Okay All right. So here I am developer right as you see here. Maybe just a little bigger Thank you Developer so I'm not I'm not an admin right so here I'm going to go over like how to create a a namespace scoped argo CD So for For this here. I actually have Get operator. This is this is the admin view operators Right. I have the open ship get ops operator installed right so it installs all the crv's Um, so that's just I do that as an admin but now as as a developer. Um, I'm able to Create my own argo CD instance that manages my own namespace, right? So, um, let me copy login command here Um, I won't do a sully This is a temper and show my show my key to the world. Uh, that's kind of funny That is that is funny if you guys can watch that episode. That's great. Um, I don't I don't care about the stoking because This cluster shortly. This is why this is why I do temporary clusters like same. Yeah Everything gets blown away after my demos nowadays. Yeah All right. Cool. So if I do we'll see who am I? I'm developer right We'll see get projects No resource found right so in the ui you can add a create a project here. Let's call this What is this demo or test? actually, uh See give me a good name for us here. Um, get ops wonder test wonder test I don't know what wonder test. I like wonder test All right, uh, let's create that. Um, so once I create that I can it's deploying my own version of Of argo cd for my name space here. I think you can do it um The best way I found of doing it is actually Plus Yeah, a little plus button and importing the yaml. So let's let's um Let me do a cat of argo cd Of this yaml. All right. Um Right. So some of the things, um I probably should Take out Move this to wonder test. There we go. Um You know some of the things You know, um application set, right? I'm going to play with application set Um, you know, some of the things I don't really care about is grafana, right or anything like that. Um, H.A. I don't care about so, uh, but some of the things here resource customizations. Um, So I'll probably do an entire episode of just resource customizations. Um And, uh This here, you know, like if I am going to do sealed secrets There's a there's a bug with sealed secrets about it'll never it Seals the seal secret operator doesn't return A proper health check like every resource, right? I think it returns like an empty string or something um So I kind of just say hey if there's an empty string that means it's good Um Basically ignoring the health And then routes for open shift since I like to keep Um, my routes agnostic meaning that I keep my my host Field empty, uh, okay, and let the route create the route So, um, so instead of it not being out of sync I will just say hey just ignore this difference, right like basically don't track this Ignore differences is great right for For things like operators where like it has its own controller doing things that it auto fills, right? So And then The health checks are also great. I'll do an entire episode about resource customization is a great topic. Um, cool Do things like resource exclusion, right? Um, so kind of just this is kind of like a standard Argo CD deployment How do I Create down at the bottom Yeah, uh, no actually I think um, I think there's I'm trying to find the um Uh, Argos cd operator one thing that you guys can help us out with 100 percent Is uh, here we go I'll put this in the chat for you chris. Cool is documentation Oh, yeah, always need to help with documentation folks like it doesn't matter what the project is The project is need to help Wait, you're sharing your screen as paused. I don't want to pause what Is that about can you see my screen? Yeah I don't know if it's doing anything though. All right. I'm gonna close the tab. Can you see that? No No, okay. How do I unpause it? Says you're sharing Start and stop again turn it off turn it back on There we go. Is that better? No, well, I just figured out. Okay. Oh, there we go. There's a all right. How's that? Great. All right There's I was looking through the settings and like I'm like, where is it like there's a big button that says resume I missed the big button. All right. Yeah, no, it's funny. Someone sent me an email And they have like red text and like that was an action item And I didn't like I completely glossed over it because I thought it was like part of an image or something Yeah, I was like, okay. I completely missed that one. Sorry completely missed the big one So I put that in the chat Chris so you can share but yeah, that is the Apparently didn't want to go to restrain. So let me put it over there. Yeah So by the way, you know, people always ask, well, how do you get this configuration? It's like You know what you're completely right. Some some of our documentation is lacking Especially with Argo CD. So if you are a really good technical writer and Want to contribute to open source? You are Golden I'll tell you that right now a lot. Yeah, very welcome. Um So here so I can create are a technical writer that wants to contribute to open source I haven't seen the list amount of work that you could do that's rather endless amount of work There is there's countless projects that need help that I know of. Yeah, exactly. So, um So, uh, here, let's go to uh, I'm really in the developer Let's go to Deployments Come on You're in wonder test Yes, I'm in wonder test. Okay employment There it is. There it is. Okay All right, so then see but it says deployments. Clearly. I see why you type that. Yeah Okay, it's deployment. Okay, and then um, so this here um You know, it deploys an application. That's Argo CD, right? So if I go see get a pods Uh, oh wait, I'm not uh oc project What is it wonder test There we go Um, that's running if I say oc get Argo CD, right? I can list my Argo CD instance, which is hello get ops Right. Um, and I do oc get Uh get pods and I'll sorry get secrets And then the secret here is I think it's I think it's this one So we'll see get secrets this guy Yeah, so, um So here usually you have to base 64 decode it Not if you're using oc, right? So this is pretty cool. If you do oc extract Oh, yeah secret Hello get ops cluster And then uh, I think it's dash dash two The dash right there it is. Um So there you go this whole This'll do that base 64 decoding for you so which I think is pretty cool. Uh, where's Fancy if I do oc get routes Wonder test Got a love wonder test He needed something I needed something two words came to mind Well, we used to do, um Back uh if for the for for those of you've been watching, um Rehat streaming, which it used to be called openshift tv When we first started right we started we started doing like star wars character But like you run out of names so quick right like by the by the third stream you run out of names All right, so this is um Argo CD that is to my specific namespace. So if I go let's try to deploy something here. Let's do Um This is something simple Does the argo community use tags like First time issue Help verify technical details things like that. It should. Yeah, like a good first issue, right? Yeah. It's one of those things Let's do the blue. The blue is asking Yeah, if they if they don't they should Yeah, um So let's deploy here So new application, um Oh wait, so I have so this is like one one of the things that I do and I think it's it's good. Uh, good practice, right? I keep I do oc get pods I keep my get ops controller and where I'm deploying to in different namespaces And so, um, oh, yeah, yeah Yeah, so if I do an oc a new Oh, no, it's a new project can be clear this oc new project. Uh, they'll call this um empty squad squad I don't know This is the squad. All right. So now we have this this this application here. Um, do I do a namespace on this here? route no Overlays, I like you when you go to your notes. Yeah, and then pin this here. Um Makes it easier to navigate so I do have a namespace. I don't want namespace. So what what I changed this earlier Uh, Is it this one? This one has a namespace So by by the way, um, this is a the reason why you never put the namespace in In the in the yaml manifest, right? You always put it in the customize Braum controller because now now you get the situation like me where I can't find something that has no namespace in it. Um Um I thought I put this here hold on overlays base I did put namespace. Okay Uh, all right screw it. Do you want to do a find? I can show you all a trick real quick Find space dot name. Um, I know seriously you can do it. You Hit dot hit period on your keyboard. Oh dot like this. Yeah. Yeah And then you should uh, this is a setup a web editor. Yeah, you can use the find function Ah, what is that control uh, control f? Well, it's a it's a looking glass over there on your screen, but yeah, where is it? Left hand side second one down Oh, this guy yeah, okay. See you can search the repo there Oh I didn't say it was gonna be easy I'm just saying hey, that's what helped Actually, let's uh, let's do this. So I'm gonna kill two birds with one stone here. All right. Here we go Let's go back here. All right. So I have uh this repo here This is a private repo. Um, okay Meaning you can't see it. Um And I think this one I do not put I did put namespace All right, let's uh, let's go back here I'm gonna Say screw it All right. O.C. Delete project. Sorry chris. We're not gonna use that. Let's we're not gonna use squat We're gonna use bgd next time chris. All right So project bgd, right? So in let's um And let's deploy we're gonna deploy the blue guy Cool, uh, so let's take this All right. So now, um, we create a new app. I'm gonna call this uh You know bgd now blue project default uh, let's do manual Whatever that means uh repository url this guy and then The path is kind of easy there we go Okay, blue right cluster this guy and namespace bgd, right? Well, we should have created so I Created this namespace. I own this argocd instance and its namespace. I own the bgd namespace as well But when I click create, um You can do a project. Oh, that helps Right, it'll be create. Um status is I get an error, right? Because um I can't manage that That namespace Right from from this from my namespace here, right? So The new version of get ops Um, I can label my namespace With the managed managed by managed by oh nice. Yeah, and so, um Where source namespace is the namespace of the argocd instance is deployed So I can do something like oh see Oh see edit namespace of bgd Right, and then we put uh is a label right now notation label I it's always There this should be I don't think we have a consensus of like when something's a label versus when something's a um Yeah, we'll see get Where'd you put our go? I put it in wonder test. That's right wonder. Oh, jeez. Well, I already forgot the name. Yeah, me too I was like, oh god better names Yeah I didn't put it in open ship. Yeah. So what what are names? So I say Argo cd managed by wonder. So I'm saying my namespace is managed by this argo cd instance here. Yeah That's making the association here cannot pass Oh, I think I need to do that as uh You have to Do it as a namespace No, I can't uh, oh see User developer cannot list namespaces in api group Let's see. Oh, see edit project. I think I can do it that way I think this is the the open shift way of doing it Either that I could just do it as as admin. Um, what's the Please edit the Field is immutable. What? What try updating the namespace Oh, okay, so it actually wants you to do it. Yeah in my face Okay, but you just did this Yeah Wonder test I think I may have to do this as an admin. Oh, yeah, I was about. Yeah, okay Okay, what I can do is I can do oc um Would oc delete Wait, that won't work. No because you can't If you can't edit it, you can't Well, I wonder as a as a regular user. Can I create a namespace? If you should Let's see. Let's try it right Create a new one Yeah, I think I have to go through the project. We'll see. No, delete it delete it. It's deleted Can I do See what I hate right? Okay, so let's do this oc Create namespace dry run equals client dash o yaml bgd bgd.yaml So I created the yaml. Okay, and then it's metadata labels, right? Yeah, we don't know we'll try it Uh wonder tests. All right, let's see if this works. We'll see create dash f Create oh, I can't believe I didn't catch that Yeah, I didn't uh, yeah, no you That's weird. What did you did you do something weird to the yeah, I think I think yeah, I think I broke it, but let's I'm gonna do it as I'm pretty sure I broke this. Yeah But we y'all love it christian break and stuff Me drop and stuff. There we go. Uh We'll see. I'll see get Uh, oh wait, we'll see So this is another uh, this is an admin command by the way here. Uh, what I'm gonna do So I oc uh create Oh oc adm New project And then you can do uh admin equals a developer and then bgd And I should be able to see oc project dgd. Yeah, I'm already on project oc project It's more either oc get pods. There's no pods there. Okay, uh oc and I'll apply Okay, cool So now if I do oc get project bgd dash ol yaml, I should see There we go. All right Okay Back to our regular schedule program Now I added the label. I don't know what I did wrong. I'll I I got nothing When when when I look back I'll see that's what I did and then I'll mention in the next stream. So tune in for the next stream Yeah, um, so that label is there Right and then now Now I I would have to Refresh Yeah, come on, let's go. There it is It's doing something something's going on How do I terminate? Okay, so it's already managed by Get refreshed again. Yeah, sometimes this takes a little while to If you do a control shift or maybe that maybe something cash on your browser. Oh, maybe yeah Let's do something. Okay Uh, let's take a look at my other configuration Uh, because I do have this working here This is my CICD demo, which I'll go over in another stream, but um This is Yeah, managed by okay, so I do have that label managed by Then I have Do I do anything else? These are other applications. So it would have to be under my tenants Here I go CD Oh, um, yeah, I think I missed something. Hold on. Oh, okay Yeah, I needed to create a cluster role. Um Yeah, all right, uh Although I thought that should have been created automatically automatically. Let's go OC um Oh wait, I have to go now. I'm an admin OC get cluster role binding cluster role binding And then grep argo I wish I had to operate a controller. Okay Okay, so that's that controller. Um Uh, what do you call it? Well, uh wonder wonder wonder test Yeah, so this uh, did we find a bug? So what does this work? I do this declaratively and it works, but like when I do it manually it doesn't interesting. Um Well, wonder if you declare it, of course it works. Yeah Interesting, okay I'm not sure if that's by design or not Yeah, so let's let's just copy it's just copy this right for the sake of demo. That should have worked, but I will I'll check with the engineers. They always they love hearing from me. Um Um, our back so I was doing this thing while I've warmed. Yeah, exactly Um, uh, see here, uh, we don't need those annotations. Uh, we'll call this uh wonder Right because we're going to be your prefix for everything now. Yeah argo cd We don't need this, uh annotations uh wonder And it's okay. So this is the part I need to know. Uh, we'll see Get uh service account. Oops Oh project Wonder test And I am looking for argo cd application controller This guy here So I was doing this thing live once Uh Oops, oh see get uh, no, I already know what it is. It's Wonder test Okay, so cluster role cluster role binding we'll see apply See if this makes it work great creative. Okay Okay, there goes nothing There goes nothing All right, it's hard refresh Try to sync it Yeah, what it's This is the problem see See this is the problem of having end of day shows nothing goes right this week Nothing goes nothing is going right this week on our end of day shows. So right Yeah, it's uh, huh interesting what because it's weird because um Because it does work quote unquote. I wonder what I did wrong Because now it's just a matter of Like figuring out Yeah, the steps I didn't apply The one yeah, one of the yeah, one of the things one of the things about get ops is like you do it once and you forget about it Because it's in a repo. Um, because I do have a working working demo here So tenants so argo cd So roll back So I did the ar back Right. Oh no, this is for something else. Uh, oh boy Our back. There we go. This is on the next episode of get ops guy to the galaxy. So I did that Okay Yes, yeah on the next episode. Well next episode we're talking about this directory structure that I created We'll talk about the directory structures, but uh, see the production. Yeah, it's a managed by so I got that We can go along. It doesn't matter man tenants If you do well, maybe I should just deploy this demo so I can just show you. Um Maybe it's wonder test that's what's doing that No, we picked the wrong name. We picked wonder test There's something there's something hard coded in open shifts that says wonder is for Yeah, exactly what you Have a funny have a funny story about that. Um, we used to um This is our running solaris back in in you know, um We would collect and delete Uh core dump files, right? Yeah. Yeah, totally normal thing to have to do. Yeah so, but like so we hired like this development team Uh to develop like some point of sale thing And they have like folders In their application, right like so they did a get clone and one of their folders if their application is called the core right I see nothing good coming So like the web website went down website went down. I was like, well, what well like, why do the website? Why is this directory keep getting deleted? That's like, oh because we collect You know, we collect things that start with core, right? So like if you do like core dash something, it'll Anyway, so that's oh my god. So by the way, so you're joking about the wonder test so like Crazy things have happened, right? That's amazing. That is amazing Uh to do a roll binding. Uh, oh, this is interesting. Um, I got nothing on my mind. I did our back Did our back twice now? at least It's a nice way to start did Yeah, but like now I'm just doing what the operator should be doing right Our back to because and now what I'm doing is I'm just getting admin access um To that mean space, right? Yeah So the user Yeah, but like I'm I'm already admin welcome dev. That's what you have in here Yeah, wonder test. Yeah No, it should be uh Bgd right in this case. Yeah bgd. That's right. Sorry Uh, we don't need this annotations, right? um Right, but I'm already admin. So like this will I mean, I'm just doing this because I'm just trying everything, right? Yeah We're like this I named it wrong, but I mean well when dev. Yeah, sure But I'm already admin on there. So like this, you know, that shouldn't You can look at the operator logs and see why it's not Yeah, let's do that. Let's go to admin Uh oc get uh oc pro project Open shift get ops Let's do oc get pods oc logs Of the application controller Uh, this gives me nothing Okay Custom resource definition ignores that is Yeah, just kind of this allocation just kind of go kind of see go level things here Arbor's class is sort of thing. Yeah Nothing of value. Uh Let's try this guy. I forget which uh get ops Maybe it's get ops I forget which one they they log this under Listening on 8080. Thank you Okay Okay, well, I'll try the oh, maybe it's you know, the repo server the repo server I should do another episode of what each one of these components does that that would be cool. Yeah Yeah, this is just same thing. Yeah, same thing and then The repo server get ops server That's the one I just did. Yeah So, yeah, and then the The repo server is actually The controller that, um communicates with the get repo right Maybe there's something there. Oh, there could be something broken and off there. Maybe I don't know if it's private. You said it was private, right? Uh, no, no, okay Not this one. Uh Yeah, nothing nothing standing out and it's just regular It's as if It's as if it did nothing, which right, which is which is what we're experiencing right So that that it didn't do what it what it said it was gonna do um So that's strange. Okay, cool. Well, at least, um We have a recorded And I could just say tell the engineers. Oh, hey By the way By the way, this is this happened. Tell me why Yeah So, uh, all right, so we will uh So I'll move on to the next thing I wanted to to talk about Okay, which which isn't um, which I'll actually I'm not going to use this one. I'm actually going to go back to the admin. We'll see get routes And then use my, um Rebo server There we go. This is my, um My argocd My cluster argocd server. So let's go to oc get secrets This should be relatively quick. Um, we'll see A secret Of my cluster To If I can spell to equal dash I can do this, you know, the last stream of the week, man. It's always That's a good point. It is a There we go. All right. So this is um Let me close this uh and close this crash and burn stuff. Um So I have this private repo Right.  Yeah, like here, right? I'm not logged in Here I get the uh, this is not the repo you're looking for. Um Sort of thing is I promise Yeah, but it is there because it's private, right? And so this I have a private repo And there's a few ways to do this. Um One is When you set up your configurations, so here if you go to your settings And you go to uh repositories There's a few ways you can do this, right? So you can connect using hdps Right and just give the url and give your username and password And that'll work Right. Um, it even works for private Meaning like a hosted git github, right? If you have like a hosted github server You just put in your tls secret there and it'll use that. Um, this won't work for me because I have two factor authentication So that won't work for me. Um, so I have to do using ssh, right? So um Okay, so if I do ssh here Um, I just put that By the way dot git actually matters if you're using Git lab, right? So there's actually amazing when it doesn't and does yeah, so um So in git lab You have to put the dot git because it does a uh a 302 And argocd doesn't handle those like it'll say A re can access repo, right? So when in doubt put the put the dot git Oops, that's in the wrong place. It's right here repository url and I'll do this here uh private private Bgd And this here I will I absolutely will not do a sully. I'll I'll do this off screen. Thank you Because this is this is my private, uh, your private ssh key. So the the one that you're yeah, you're not supposed to show anyone um And this here I will cry if it gets out so Oh, yeah Like you know why like I don't Share my screen too often, right? Yeah All right, there we go. Um, so once you add, you know, uh the git repo And you do a uh, did I clear my screen here? Yes, I did. Okay. I could put this back up here. Um, It'll have successful, right? So when you see this that means it's successfully connected Really cool, you know, it's so then you can actually go here and um, You know, we'll have private bgd default sync policy manual right depository And then uh, let's just deploy the blue actually is to bgd Right in the cluster, right and let's say vgd, right and you create it Um, you know, I should say out of sync pretty soon. Yeah, right and when I sync it it'll actually go um Go and sync that right Look at that. It's syncing. It's in progress, right? So you can do it with ssh in your private repo, right? um If you don't want to do it ssh And you want but you also don't want to do a username and password. You can actually do it with tokens um So the way that looks here is Let's go back to the repo in this The repositories let's actually delete this Right, yeah delete it and then If I refresh here It'll go unknown state, right? Because I can't you know, I can't it doesn't let me connect to that repo There's no connection to that repo.  Yeah, exactly.  They move it. I feel like manage access second one down access Yeah, should the password No, it's uh, it's actually I think it's actually in my settings over here. Oh, is it? Oh, yeah it is. Um developer settings And uh tokens right so here again off screen i'm gonna generate a token Thank you You could have I mean you could do it on screen and burn it. I mean it doesn't really matter. Oh, true. Yeah. Yeah, true Let's do this. Uh, let's call this argo Um, which I think this is pretty cool. Sorry You can actually set expiration dates now in your tokens and get out before these three forever. Yeah, no and like you would Yeah, anyways, yeah, you would forget that you had this token Yeah, yeah All of a sudden he can still do stuff in your repo. Yeah, exactly Um, and give it permission so I can probably use someone will tag me later Hit me up on twitter or email or whatever. Yeah, whatever the least restrictive is I haven't found it yet. I just basically do all all I'll just do the full control of private repositories because I haven't found a combination that works yet But if you can get it like a read only or a clone only Setting just let me know right and then I'll generate token here off screen Hey, we'll uh copy that My coffee buffer copy, okay, and then uh, cool So now I have a token here. Awesome. Um, and then here you can do Uh, same thing right so go to repositories HTTPS right so you just do an HTTP username It just you can put whatever username you want as long as it's not clear It's not it's not it so it's expecting anything not empty string So you can do like not used right you can do whatever you want, right? You can You know, uh, you know foo you can do a barf, right? Oh, it's uh yogurt whatever, right? Um Uh, the mask. Yeah, this is not actually I'll we'll mess around. I'll just put not use Right and the password is your token, right? So just put your token as the password and then you're the repo Um, how do I go back? Back back back back back. I'm going to burn the token anyway. So the matter This token will not exist. All right, so you just put in, uh Uh This repository URL and then uh connect And unable to the repository authentication required, but I already did that Did I put the right token in Do you need the doc yet? Oh, maybe or do you need your username in there? No, I did this as not used last time Huh, okay Let's go to the docs because I actually um our go CD because the docs Connect repo using sbs antocredentials Access token, okay, because you use the name you might ask talking following instructions to get the Then connect repository using any non empty string as username and access token value as the password Unless I am hold on let me look at my copy buffer Oh, I messed up the token Well Yeah Let me recreate this token No one can see it thankfully I understand I delete this token generate the token You token oh, I had a space and I copied that Oh That'll do it. Okay. That'll do it. All right. Let's let's go back All right. Let's see here. Let's see if Connect come on. There we go. There we go So that was the issue. I had a space in my when I copied the token always something Oh, this is something so here it is actually using so you do a non non empty string for username as it says in the docs And your token as the password and I think this is probably what most people want to do I like using ssh, but for some reason some Some organizations don't allow that forget not sure why whatever Um, but you can use your token. So here, um Uh, see what I do to do a refresh. Should this work? Oh, actually, uh This might not work. What's the error The error is probably it's looking for a repo that doesn't exist. Yeah, it still thinks it's using ssh So let's create a new app Vgd green Yeah, there you go manual Whatever manual is Cluster URL namespace USB gd Green There we go. So it's out of sync. That means I can connect to the the repo Objects yeah, so that's a way to connect to your private repos is uh one through ssh right through the Adding the private key username and password, right? So you can upload that if you don't want to upload username and password You can use a token. Um, you just use the same mechanism as username and password you will um Put non-empty string as username and the password you just put the token in making sure you don't copy the space When you copy your token That's an important that's an important thing. Don't don't do what I did but minor detail Minor detail, but but uh, but I failed because so that way you guys don't fail. It's right. So there you go you use me as uh As an example of uh, don't fail. So Uh, that's it, right? I guess, uh, two out of three ain't bad, right? No, that's not good. I think we got we got two out of three demos done. Um And if you were in baseball, you'd be doing amazing right now. That's right, right? I'm batting seven fifties or what would that be? 600 is not a matter. Six hundred six. Yeah, 600. Yeah Six six seven. Yeah Six six seven or whatever it is. That's uh, yeah, that's like I'd be in the majors Leagues, I'd be major league. Yeah Next level major league playing. Yeah. Yeah. All right. Awesome. Cool. Thank you christian. Thank you everybody for tuning in Yeah, thank you everyone. Appreciate it and uh, we hope That you appreciate this uh Series of demonstrations as always catch up with us by subscribing to the streaming calendar You can always talk to us on discord if you're got a question or anything Feel free to ping me uh short at redhat.com and I can get an answer for you and uh, I'm also on twitter at chris short Yep, i'm christian h814 on twitter or uh christian at redhat.com. Right. I actually got that email Good for you christian christian at redhat.com. I will which probably makes me like stay here forever, right because Now you're stuck. Yeah, now i'm stuck because I got the cool email. I got my first name. So um I Yeah, I never want to give this up. So uh, go ahead uh hit us up. Um, discord is probably the best place Um, uh, yeah catch us on there and yeah, thank you everyone for watching. Yeah, awesome.  Thank you Cheers


During my time with Brave and on Google Chromium one of the features that I truly came to enjoy was tab groups now if you listen to the podcast you'll have heard me talk about this before but Basically what tab groups are are the ability to take a group of tabs and group them together in a category So for example, you could have one for video ideas if you're a youtuber and that's what I've done now before I Started using those browsers. I wasn't much of a tab hoarder I usually had five or six tabs open and that was it when I was done with something I'd close it or I'd bookmark it and I still use bookmarks a lot But since I started using those browsers, I found myself opening up tabs and then just leaving them open It's kind of weird because normally I'm much more organized than that But with the use of tab groups I don't really know that those tabs are even open because they're hidden away inside the group and that allows me to go through and like for example have a category for video ideas like I said and it has You know a dozen tabs in it, but I don't see them now. They are Open so they are taking up resources. So this is definitely a downside of doing it this way But I found myself really enjoying being able to go through and categorize all my tabs Even during the times where I don't have a lot of tabs open I like having those categories and having them able to separate the things that I'm doing or Whatever it kind of allows me to Push the stuff that I shouldn't be doing so for example like YouTube or whatever into certain groups And I can close that group and then focus on my work So it kind of also allows me to focus my time just a little bit better It doesn't always work obviously because it's still easy to go to the group and then go to YouTube or just open up a new YouTube tab But at least the idea is there so the problem is is that when I moved away from Brave a few days ago And moved back to Firefox I found that Firefox doesn't actually have tab groups by default and this kind of broke my heart a little bit because I Always thought the Firefox was fully featured, but they didn't have my favorite feature and then I was sad and I went through a whole period of depression before I realized the extensions exist and Then I went about the whole process of trying to find the best tab extension that I could possibly find Sadly there's only one like there are several Extensions that do this, but the rest of them are jank af as they say. It's just none of them are very good. They're Kind of more visual tools and they're always in your face and they're not easy to get to but luckily There is one that is really good and that extension is called simple tab groups now Let me show you what this looks like. This is the GitHub repository for the extension and it's also in the Mozilla add extensions Store, whatever hell they call it really what this does is it allows you to go through and create groups Just like you would in a chromium-based browser The only difference is is that it hides those groups away So at first I didn't really care for this all that much because I was so used to the groups Being up here at the top, but I've come to realize that the way this does Grouping is better. So all this does is it creates groups Just like you would in a chromium-based browser and then puts them in a menu over here So I have several groups that I have and I can just go ahead and open up a group like that And it looks like I'm opening up a new window, but I'm not actually opening up a new window It's basically just taking me to that group and the other tabs are just still there They're just in the background. They're hidden so I can go through and go to another so this is my ideas group I can go to the Leno group just like this and It just looks like I'm opening up a new window, but really if I float this window You can see there's no other windows behind it. It's just this window So there are other than being able to just bring tab groups to Firefox. This actually does several other cool things It allows you to assign Keybindings to certain actions like switching back and forth between different groups you can go through and Alter several different Settings for this thing so that you can kind of customize what it looks like how it functions You can allow it to show the thumbnails for certain things as the icon for the group If that's what you want to do you can go through and save groups as Into your bookmarks if you want to go through and do that as I said You can go through and assign several hot a couple hotkeys in order to switch between Different groups you can add other hotkeys. There are several actions here that you can do This allows you a lot more functionality than what you get with the tab groups in Google Chrome or Chromium or Brave or whatever Because there's just a ton of actual choice here you can also go through and back up your groups to a file if that's what you want to do and That's awesome. That means you can take your groups from here to another computer if you wanted to or whatever You can also have it go through an auto save a backup of your tab groups every day if you want to or every month or whatever That's also cool Now the only feature that I really wish it had was the ability to sync the groups over Firefox sync that'd be awesome if I could go through and because I signed into Firefox and all my browser all my Devices if I could go through and as long as the extension was installed on those devices Sync the groups between the computers like that that would be absolutely amazing. That's about the only feature I can think of that I would want That is not available, but other than that there's not much here that you that I can show you the idea is is that you right click on a Tab and you can go through and move tab to group or create a new group or create a temporary container and You can even go through and say you have a list of links So for example, we have my channel here. We could go through and say Right click on this and then click open link in group and it would open link in one of your existing groups or even a new group That's pretty cool And it so means you don't even have to open up the tab in this particular group Like if I wanted to just say I wanted to go through and add open up this one here open link in group and then we'll do that in the ideas group and As you can see it doesn't even show up here we'd actually have to go to the ideas group and We'd see that that video open up in that group the idea here is that you can go through and organize all your tabs into different groups and Always keep them organized. You don't have to be in a certain group to add something to it Now one of the things that is also really cool is that if you have Pin tabs those pin tabs show up on every single group. So for example, I have tweet deck up here and Every single group I have tweet deck and all my Google Doc stuff show up right here in every single group That means I don't have to go through and find out what group those three pen tabs happen to be in so that's really cool so that is simple tab groups if you are like me and have switched from Chrome or Chromium or whatever and Have moved into Firefox and you're missing tab groups. This is an amazing way to get them back In fact, I like this way better than the Default tab groups that you get in in Brave and whatnot simply because you have way more options to customize stuff and it's open source So win-win, so that is it for this video just a short one if you have comments You can leave those in the comment section below make sure you hit the subscribe button and like button if you haven't done So already I really do appreciate that you can follow me on Twitter at Linux cast You can support me on patreon at patreon.com slash Linux cast before I go I'd like to take a moment to thank my current patrons today Devon Patrick I'll promise Marcus Megalyn Jackson to will Steve a cyber guy Linux Garrett Mitchell Arts Center cover data Jeremy Sean Oden Martinie Merrick camp Dr. Lee J dog Peter a crucible dark band of six and Vlad A. Thanks everybody for watching. I'll see you next time


For the Circuit Python Parsec today, I wanted to show you how you can use split to split a string into a series of strings based on a separator. So this is useful for cases where you have things like comma separated lists or other messages such as GPS data, where you have strings that you want to kind of chop up into pieces and use those in a sensible way by putting them into a list, which you can then use list filtering and management of those items. So here's how we're going to do it. You can see here, I am creating a variable called sentence, and it's just this text string. This is a neat Circuit Python trick. Then I am going to create a variable that's going to be a list called words. And into that, I'm casting sentence dot split. So I took that string, which happens to have spaces between the word. And then I'm using sentence dot split. That will essentially look for every white space, unless we give it a specific separator to use, and it will chop those up and put them into this list. This list called words. And then I can grab those and do something with them. So I'll show you here in action. If I let this run, you'll see it takes the first sentence. This is a neat Circuit Python trick. Then it shows me what my list looks like, which is broken up into all these separate strings. Then I'm using a little loop just to print them out to show I can do something with them. And I'm saying for word in words, print them. And then I'm putting a little timing space in there. And then since this is now a list, I can do things like ask, hey, how many things are in that? If I made this a longer sentence and resaved this, you'll see we now have a larger string to work with. We break it up into the separate pieces. And now it tells me, oh, we have 11 words in this string. And so this is how you can split a string into separate strings using split inside of Circuit Python. And that is your Circuit Python Parsec.


Why the narcissist will never care about you? The narcissist will never care about you. They're self-absorbed and they lack empathy. They only care about themselves. That's how their disorder is designed to work. They care about their own needs. They care about survival. They do not care about your emotional or financial investment. They don't care about how many years you have spent with them. It means nothing to them. They don't care because that's not how their disorder is designed to function. It can't function if they're constantly worried about other people's needs. All they care about is supply. All they care about is what you can do for them. What value and stimulation you can provide to their lives. Everything has to be about them.  You have to provide them with constant amusement and enjoyment. But you cannot blame the narcissist. You have to accept that this is just the nature of the beast. I got bit by a monkey in Thailand a few months ago. But I didn't blame the monkey because I understand that this is just what animals do. You are expendable to the narcissist. You are of little significance to them. And therefore you are able to be abandoned or destroyed at any moment. They just use you to advance their own agenda. And then they dispose of you because they don't care about your feelings. They don't care about your emotions. They don't care about all of the money you invested in them. Because at any moment they could leave you for someone who has more money. You can try to be everything that they want you to be. You can try to do whatever they want you to do. But it's not going to change anything because it has nothing to do with you. It's just the nature of the beast. Which is why it's so important to stop seeking validation for the narcissist. And to become more aware of what you are actually dealing with. Because all of those old values and beliefs you had of the narcissist have never served you. Just look back at your relationship with the narcissist. And you will see that they treated you as an emotional tampon. They walked all over you. They never respected you. They smeared your name. They damaged your reputation. Because they never cared about you. They only cared about themselves. But sadly everything in today's society is designed to enable these narcissists. It pedestalises them. It fuels their disorder so that they can chase after new sources of supply. So not only does the narcissist not care about you. But even society doesn't care about you either. We are disposable. We could be thrown away at any moment. Because they don't care about you. Which is why you need to live for yourself. You need to live life in your terms. Which is actually very attractive to a narcissist. It will make them chase after you.  But this is what you should be doing. You are wired to stay on your path on purpose. And not make the narcissist the centre of your world. When you stop making the narcissist the centre of your world. That is when they will want to follow your lead.  But even then, if someone else came along who was more attractive. Or had more money and success. Eventually the narcissist would leave you. And all of the time you spent together. All of those sentimental moments. And emotional memories. It wouldn't mean anything to them. Which is something that you need to be aware of. Because then if one day the narcissist just decides to leave you. It's not going to be so shocking to you. Because then you will understand that it's just a part of their nature. So although it might annoy you. It's not going to shock you as much. Because even if they find a new source. Every supply has an expiry date. They cannot be happy with anyone for long periods of time. The narcissist will never care about you. Even society doesn't care about you. Which is why court systems are set up to protect narcissists. Just turn on your television. And you will see that they glorify narcissists. As though it's something that people should admire and respect. Because no one really cares about us. Especially narcissists. Sometimes it might seem like they care about you. But they will only seem to care about you. As long as they think you can contribute something of value to their lives. Because all they really care about. Is their own survival. Thank you for watching. I hope this video resonates with you. Please like, comment, share and subscribe. If you were lighter than eight. My PayPal link is in the video description. Coaching inquiries. You can email me at coaching.nax.fi.ver.co.uk. Thank you for watching and I'll talk to you soon.


What's up, guys, and welcome to Trendy Updates for SPM Boys. Now, onto the trending news today is Nandi Senator Samson Cheragay, who has said that if Ababuna Momba CES sports youth and art continues to mismanage into oblivion of their beloved sports. Naka'ezakusema, how kind of ministry officials fly fast class with your girlfriends to Olympic Budapest. Hungary at the expense of our athletes. Naka'ezakusema, how female athletes being exploited sexually and economically. Naka'ezakusema, parliament master Samson CES sports to a vast disastrous mismanagement of our sports. Now, the Nandi Senator Samson Cheragay was grilling the CES sports Ababuna Momba, although the welfare of Kenyan athletes in a parliament. Nikiangali, how come in section Nelly Sherry says first of all Hungary has won more summer Olympics medals than any other existing nation. Naka'ezakusema, but never to have hosted the games. Secondly, we are to blame for this. We let politicians get away with everything. They misuse our resources and we are busy calling them waishimioa for getting the work for us. Naka'ezakusema, I have zero respect for politicians self-centered. Shaz Della May says wa se metu jina ya girlfriend Maramoja. Ran Shira was right. Livia Sherge says Ababu is ever busy hosting content creators and broken abotives. We shall have suffered by 2027. Lilian Ketch says what did they expect from him? His character should have disqualified him. He is a kazi as a tacky politician. Ayabasi do yo anaitu Senator Samson Akisema as the Senator Nandi County Akisema That means, of course, a legend that Ababuna Momba is mismenaging. You know, their fans are from the ministry. Akuliza, how can the ministry officials fly fast class with their girlfriends to Olympics? Let us know down in the comments section what your thoughts about what Nandi Senator is saying. But in the meantime, keep it trendy updates. Haba SPM birds.


Hi, welcome to nursing school explain in this video about EKG interpretation, specifically atrioventricular or heart blocks, and this video will go into second degree heart blocks type 1 and type 2. If you haven't already done so, I highly recommend watching my basic videos on electrophysiology as well as the EKG interpretation basics where I explain how to read the EKG paper and determine the heart rate as well as go over the normal intervals and rules to memorize so that you have a methodical way of always approaching rhythm strips the same way. Second-degree AV blocks have a type 1 and I type 2 and they have multiple names that people refer to. So second-degree heart block type 1 is also known as a mobits type 1 or a winky buck heart block. I'm not sure where that name came from but it's very specific to this second degree type 1 heart block and the impulses in a second degree type 1 heart block take longer and longer to reach from the atria to the ventricles and we'll look at that when we specifically look at a rhythm strips here in a moment. Second-degree heart block type 2 is also known as a mobits type 2 or a classical heart block which means that only some of the atrial conduction reaches the ventricles and it may progress to a third degree which is a complete heart block if it's not treated. So the second degree type 2 is more dangerous than the type 1 although both may progress to a higher degree third-degree heart block. Here is a review of the conduction system of the heart. Remember the P-wave represents atrial depolarization and the R-wave or the R-wave is the beginning of that QRS complex that represents the ventricular depolarization. So now we just discussed that in the second degree type 1 these impulses take longer and longer to get through so now we might have a normal impulse going through then this one is a little bit delayed and the third one is like extra super slow to come through wherein a third in a second degree type 2 these impulses one might go through all the way and one might not. The next one might go through from the atrial to the ventricles and the second one is just halted and that basically means that we will have a P-wave with no ventricular response. So this one is missing this ventricular response here. Looking at this rhythm strip for a second degree type 1 heart block and by the criteria that we usually methodically analyze rhythm strips with. So rate is can be 60 to 100 but it may be less than 60 because there is that conduction delay in the AV node. For rhythm or regularity there is this factor or this term called regularly irregular. In atrial fibrillation that determinant factor is called irregularly irregular where because of the fibratory waves there is no rhyme or reason to the ventricular response to the atria. We're here when we have this conduction delay there is a certain regularity to this pattern as we'll discuss in the moment here. P-waves are usually upright but there may be greater than one for every QRS which certainly is abnormal and then this here really is key in a type 1 second degree AV block which is that the PRI gets progressively longer until a QRS drops. So looking at this here we can see let's first look at the rate 1, 2, 3, 4, 5. So in our case the rate here is 50 so this applies knowing that the rate is a lot of times less than 60 and then we can see that this is irregular because we have a gap in here so definitely it's irregular actually and so then at this the P-waves they are all upright but we have this one here that's kind of like missing a QRS so there's more than one piece for every QRS because we could count this and this one a P-wave for this following QRS and then regarding the intervals so if the PRI gets progressively longer until the QRS drops so if we start looking at this first one here it starts about here so we count the boxes 1, 2, 3, 4, 5 maybe so 0.20 then the second PRI we counted from this line 1, 2, 3, 4, 5, 6, maybe 7 so 0.28 and this third one here is already longer I can see that so starting here 1, 2, 3, 4, 5, 6, 7, 8, 9 maybe even 10 boxes which would make this 0.40 approximately and then we have the P-wave here with nothing here so we are missing this QRS so this PRI gets progressively longer until the QRS drops so this PRI is here this one is a little bit longer this third one is even longer and then for the fourth one whoops we're missing the QRS and this is very typical of a second degree type 1 heart block now getting back to this regularly irregular so this here basically follows a pattern and then the second pattern would start over right here where this PRI matches this first one the second one matches the second one and if we would see further this pattern here would be repeated in these next four impulses so that's why it's termed regularly irregular and then the last part that we have to look at with our rhythm analysis is the QRS complex and in a winky buck or second degree type 1 heart block the QRS is usually normal so let's find one to look at this first one here seems to lend itself to that very easily so starting at the thick line 1, 2, maybe 2 and a half boxes so 0.10 which makes the QRS normal and again we have this regularly irregular pattern PRI prolonged PRI even longer PRI and then a P with a missing QRS which is this very typical pattern causes for second degree AV block type 1 maybe AV node ischemia due to an occlusion of the right coronary artery basically anything that causes the AV node not to function properly may cause a delay there and a lot of times the culprit is an occlusion or basically a blockage increased parasympathetic nervous system tone anything that slows down the heart rate can cause a second degree type 1 heart block as well medications such as the joxin beta blockers calcium genoblockers specifically varapamil are known to cause second degree type 1 heart blocks and signs and symptoms if the ventricular rate is near normal so if it's around 60 or maybe even a little bit faster the patient might not have any symptoms but if it is due to this AV node ischemia because of an occlusion and that might just be partial of that right coronary artery patient might have signs and symptoms of MI which are hypotension, dysneous shortness of breath, signs and symptoms of CHF, chest pain, altered level of consciousness, anything that we would expect that would be due to a decrease in perfusion because of this blockage. Treatment for second degree AV block type 1 might be to just discontinue the causative medications if the patient has taken too much or maybe there's an overdose once these medications wear off the patient's heart rate will hopefully go back to normal but atropine may be indicated in a second degree type 1 in the meantime until the medications can wear off or if it's really significant and the patient's symptoms are associated with an MI they might need temporary pacing also whenever there's a second degree heart block type 1 it may progress to a second degree type 2 or a third degree heart block which means that we have to carefully monitor the patient for these signs and symptoms and keep an eye on their cardiac monitor because they can get more significant and more severe. So now second degree AV block type 2 also known as a Mobitz type 2 or classical heart block still an incomplete heart block. The rate is usually less than 60 so usually very bradycardic, rhythm is regular, P wave is upright but there is more than one for every QRS complex. Intervals are usually the PRI might be constant but it may be greater than the 0.20 that we would expect as normal. In this specific one our rate let's see is 1, 2, 3, 4, 5, we have 6 QRSs here so our rate would be exactly 60 on this six second rhythm strip. It is not really regular the P waves here are regular but the QRSs you can already see with the naked eye are not regular so I'm going to add here might be irregular and then with the naked eye already you can see that our PRI criteria doesn't match because usually we like to have one P wave for every QRS while in this case we have definitely more than one so we have one P wave here one here and then this is my next QRS so the PRI is usually constant but may be greater than 2.0 so in this case we can't even count this as a PRI because we're missing the QRS right here but when we do have a PRI which would be in these three examples here it's probably constant so let's measure this starting here 1, 2, 3, 4, 5 so that's a 0.20 and then here we have 1, 2, 3, 4, 5 that's normal and then here we have 1, 2, 3, 4, 5 so that's actually normal PRIs here but they might start to get a little bit abnormal you can see it's just borderline from being the the the normal value of the 0.20 and then the QRS if we look at that because when the ventricle does respond so when the impulse does go through the response is normal so the QRS should be less than 0.12 let's find one here that's easy to look at which the first one right here so the QRS starts right here 1, 2, maybe 2.5 so it would be 1.0.10 which makes it a normal QRS so in a second degree hard block type 2 or classic hard block we have greater than one P wave for every QRS and then when we do have the P wave that is followed by the QRS the PRI is constant but all of a sudden we're dropping here so here and here the the conduction does not go through the AV node there's some sort of a block there that does not allow every single P wave to cause that QRS complex to follow examples or causes of second degree type 2 would be schema of the bundle branches due to an occlusion of the left coronary artery remember in type 1 it was usually the right it can be a cute myocarditis or a cute anterior wall MI signs and symptoms may be asymptomatic if the ventricular rate is near normal so in our example here the rate was 60 so the patient might not have symptoms but if it is due to an MI they might have very typical symptoms of heart attack which could be hypotension shortness of breath any signs and symptoms of CHF chest pain or altered LOC again because of this decreased perfusion interventions for second degree type 2 so this is very important here it may rapidly put progress to a complete or third degree heart block therefore usually atropine does not work that's usually indicated in other heart blocks so the patient might need transcutaneous pacing until a permanent pacemaker can be placed here is some credits and references about practice strips I highly encourage you to go to these websites and practice applying these rules to different um rhythm strips so that you can get familiar in identifying these rhythms because particularly these AV blocks can be pretty difficult to identify but the more you practice of course the better you'll get at it here are some other videos in my EKG interpretation playlist specifically these AV blocks here I highly encourage you to also watch the other video on first and third degree heart blocks as well as any other videos that speak your interest please subscribe here on youtube like this video give me a thumbs up follow me on instagram to stay up to date on newest releases as well as my weekly instagram quizzes on monday thanks again for watching see you soon


it's time for the demo KG700W here with the Ham Radio Village. Let's get going on APRS and a quick walk around on usage of every aspect so let's get going. So APRS the automatic packet reporting system is based on the AX25 protocol from the 1980s. Pretty old. Another slang term for this protocol you may have heard is packet. Packet is basically another use of this. We're going to dive into more of the APRS route of this. Some of the basic usage so we'll go from the APRS website how to see APRS. You won't need a license to do this. We are going to go to the end user someone transmitting APRS from a handheld mobile and we'll also take a look at a DigiPeter file parts of the APRS network that get your message to other DigiPeters or to an iGate out on the internet to be posted online. So let's first take a look at where I go. This is where you are going to see APRS traffic live for your area. There's two main websites. Let's dive into the first one. So this is APRS.FI. For those of you who haven't been here it's a great resource to see live APRS traffic. We'll zoom out here. Let's go to the Las Vegas area. Defcon Central here and see what's going on. So when you come to the site it'll first probably throw you in somewhere in Finland. You'll have to navigate to where you want to go. The right hand side will let you select how much traffic you want to see. Do you want to see traffic for the last hour? You don't want to see the last traffic for the last day there. So plenty of information to see. We're mainly going to focus on the map here though. So here's the Vegas metro area. There's all these icons about. We got looks like an RV icon down here in the middle. We're driving around as RV broadcasting APRS packets. We have weather stations. We have other objects on the map such as D star repeaters and things like that like N7 ARR over here. Zoom is not working great on the video. We'll get some more details later there. And then here we are outside of Vegas. My favorite mountain Mount Potosie. This is home to the Vegas Digi Peter and Eyegate. So it's definitely really cool to see all this on a map. And again you don't have to be licensed to view this map. It's definitely a great resource. So this is what I go to when I am looking for who's coming through my area. What are they doing? Are they listening on a frequency that I might want to talk to them on? Mainly for vehicles here. But if we pan out into the desert a lot of the times you'll see planes. You'll also see weather balloons and other things like that going across the map. So definitely keep an eye out for those. Let's for a chance see if there's any weather balloons or anything going across right now. I do not see anything up. They typically do launch every couple of weekends though out here in the west desert. So definitely something to keep an eye out on. Okay let's look into detail on some traffic. What are these users? What are these objects sending to the APRS network? So here's a car out in the west desert going just past let's see just past the test side over there. We have K6 BFA and he is cruising along the highway. We can see the timestamp of the data. We can see his heading, his speed, his altitude. Any GPS metadata that that radio is capable of putting out. He has a little message Mike E N route and he is repeated by the Vegas Mount Potosy repeater. If we zoom out here we'll know we can we can kind of visualize how his packets are getting to the internet map here. Oh come on there's no one any clear. So if you hover over an object oh come on it is not wanting to work for me here.  See so I'm hovering over his icon there you can see it's going through the Vegas Digi Peter up on Mount Potosy down in the bottom middle there and looks like it's going to another eye gate. Maybe the eye gate there Potosy's down. So these eye gates that it's going to transmit to can be hundreds of miles away looks like that's down in the San Bernardino Valley so that's a pretty crazy run for some APRS traffic. When you get to things like weather balloons you'll have hundreds of stations picking those up directly but the first station that picks it up is the one that gets to report it to the system. So another really cool map to hit up when you're looking for some APRS action is APRS Direct. It's more of a high-end web 2.0 type interface it's got live updates the icons will update live you'll be able to see pings on the map when things happen as they're happening so sometimes it's a little easier to see things here. This is kind of a newcomer to APRS maps which is great.  So this map very similar to the last map it's just a little more interactive we got same amount of data you can see hops that these packets are going through you can click on an object there's our same guy we're going to be pick on on here K6 VFA he is cruising along there's his same path he's being reported through Vegas at his timestamp same information bearing heading things like that so this is just really cool very awesome way to see what's going on with the APRS network now how do you get traffic to the APS network so this traffic including weather stations handheld radios mobile radios that are APRS capable or anything else you can think of they all require a modem enabled device or just a fully integrated APRS device to get out there one of the easiest ways to get into it is with a integrated radio so let's look at my handy Kenwood THD 72 it's a great here we go it's a great little radio not really little it's a little bulky needs to go on a little diet there but it's an all-in-one solution to get your packets out to the APRS network this particular handheld can be used with the built-in GPS with the antenna on the top there it can also be connected with a cable to a weather station or other kiss enabled device so it's very cool very fun to hear APRS going on so it looks like someone's keyed up on APRS but uh sounds like voice data someone's got a hot mic so the APRS frequency you're going to want to dial to on your all-in-one inclusive device is 144 390 in North America I haven't gone through APRS on any other country so I'm not 100 sure if they're throwing other frequencies around for other regions but definitely 144.390 for North America now tuning into this frequency you're going to hear the raw APRS packets they are going to sound very much like an old classic modem I don't know it sounds like I'm getting some interference or someone's hot mic and 390 for me so I'm not going to be able to decode anything yep just static so I'm thinking I got some interference but with this handheld I can beacon directly just by hitting beacon here and it will manually beacon my location based on the GPS uh to the APRS network I'm inside so my GPS likely is not going to get my coordinates and without proper coordinates I don't think it will show up but just in case let's go let's go look for kg7 o o w I am not showing up so there's definitely some traffic around though so with a handheld like this we get to configure it so out of the box you need to configure your handheld with typically just your call sign so I just I just go to the menu hit up APRS and it typically just needs your call sign so you throw your call sign in there oh there we go you'll typically just throw your call sign in maybe a SSID at the end see that dash 9 at the tail in there you can do that if you have multiple radios or if you want to have a specific ID for that radio and then you'll basically just need tell it how to beacon so on this handy Kenwood we got here we go where is it going you can set your position manually and you have beacon so this is how it's going to beacon your information typically on a handheld like this you can set it to beacon on an interval or you can have it beacon using uh what's called smart beaconing and that will automatically beacon you based on your speed and your heading so if you take a turn you change speeds it's going to broadcast your APRS data accordingly so it's really cool these little handhelds are great but definitely on the pricey end so this Kenwood THD72 had to look that up there is I think I got this around 500 bucks so it's definitely pricey it's definitely capable but uh there's other options out there so let me slide this over and give kind of a cheaper option so one another cool option is a standalone unit I got this handy AVR T5 from amazing aliexpress these little things all inclusive it's only one watt of power but you'd be surprised how far you can get out with APRS on one watt of power this handheld this Kenwood I've gone probably 150 miles is pure line of sight so this was definitely to a mountaintop digipeter I was out in the Nevada desert and was able to get to a digipeter in central Utah so it was really cool but this little this little one watt uh Chinese kind of hard to configure radio is actually pretty handy I got hams here that will either throw just leave it alone or throw a linear amp on it and get a little bit more distance out of it but definitely something you can throw into your backpack hiking uh on your bike in your pocket so it's very cool very very nice little slim device here another option when you're picking end user APRS equipment is definitely an app called APRS droid for Android so APRS droid I haven't gotten to work on the latest version of Android but most ham software you're going to expect that you can get little this is called a microlink TNC and it's just a little 3D printed case with basically a Arduino nano inside and it connects the little three and a half millimeter jack there to an adapter cable to your radio of choice so it can be paired with a bauphin it can be paired with another radio anything you want and it connects via bluetooth to your phone so your phone will be running the APRS droid app and very much like the handheld keyboard you get to put in your call sign you can put in icons that you want to put and any messages that you want to put as your beacon another really cool feature about APRS is not just GPS location but messaging so on my little Kenwood handheld here I can send messages by you know using the keypad pretty old school kind of like how you used to have to text back in the day uh the touchpad there but the advantage of this cool little microlink TNC with your APRS droid enabled phone you can just use your android phone type the message and get it sent so it's much easier to use this paired with a phone and a radio than to just use the radio if you're going to go the messaging route so definitely something really cool there's just I always look on aliexpress or amazon for new APRS devices and there's just every once in a while they'll come out with something really cool so that gets us around the end user devices handhelds other dedicated units from china that may or may not have reporting capabilities for or the government there to mobile link TNCs with your android phone but there's another piece to this puzzle and that's the stations that actually get that data the packets that these devices put out to other digipeters and eventually to the internet and that's where a digipeter comes in so this is a basic digipeter setup I got these all over the state here in Utah and we have definitely increased the here let me let me zoom out here and we'll see if we can okay we have definitely increased the IPRS coverage in my region and hoping to expand into other parts of Utah so this whole setup consists of a two meter radio this particular radio is just when I got officer plus it's an e of johnson rs 5300 here and all you need is a two meter radio that has connections on it to for push to talk and for the audio mic and speaker most radios you see out there will have this either through the front port jack here or with a dongle or connection in the back this one just happens to be done with a db of 15 connector on the back db 9 and this just plugs in and gives me the breakout for audio push the talk and and that's all we need on the radio side so a two meter radio it can also be a handheld I've seen people use bow things for this so definitely something that can be done a little cheaper but this is nicer plus radio I got it for about 35 40 bucks so not too bad too shabby so this radio needs to hook up to a device that can decode these aprs packets to do this decode will you I interface my raspberry pi with a easy digi these are available on ebay and it comes in a little kit you have to solder it together just a little more part of the adventure all you really have to do is solder two leads for the audio and the connections to your radio for push to talk things like that so in this particular setup I am using the GPIO for push to talk you can also just use vox if you're using like a handheld radio or bau fang this particular two meter mobile radio is not capable of vox so I definitely have to manually trigger push to talk and that's where GPIO on the raspberry pi comes in so radio goes to your easy digi the easy digi is basically just an isolation you actually don't need the easy digi you can wire things directly it's just safer you're not going to upload you're not going to ruin your pi with its low GPIO voltage and you're not going to screw up your radio and you'll also get cleaner audio so definitely go with the easy digi on the raspberry pi it's fitted since since it only has a speaker output I wish they made this a four pull connector with a mic input but hey you can always go to another pi variant like the banana cream pie or something for that I just fit my $35 raspberry pi with a four or five dollar usb audio card so you can grab these on amazon I'll put a link in a little write up when we post this video but you just take your microphone plug it in and your speaker for your radio plug it in there get it in the pie and you're good to go on the hardware side I guess other than the GPIO so GPIO is another another step in the setup the GPIO portion as well as the software portion is covered in the documentation of the software I use and we'll get into that right now let's go to the good old browser view here so my choice of a pair of software for my raspberry pi or any other system is called direwolf so we'll hit up direwolf I'm just going to use google here they have a great set of documentation on github you can go through any doc on here but the main thing you need to do is go for the documentation on your system so they have documentation for linux they have documentation for windows and they have specific documentation for the raspberry pi so let me look here so yeah I'm just going to scroll down here just to make sure I'm speaking the truth here but there we go raspberry pi for ham radio so direwolf is going to be built on the top of your raspberry pi so you need to install a distro I just use raspian for my raspberry pi get that installed on your raspberry pi and then use the instructions from github here the documentation repo to build it for your system mostly it is literally just downloading the source and then compiling it once you've compiled it you can start right out and get it running so let's go to let's go to console and see what direwolf gives us on the raspberry pi what kind of information what what does it look like when you're actually using direwolf on a raspberry pi I'll go and I'll probably post maybe some quick dirty instructions for actually building a direwolf kit on the website ham village dot org but for now let's go cut to the end results I think I'm pretty low on time here and we'll go to the console here so this is what a typical putty installation well not putty this is what a typical terminal of direwolf will read out once you're up and running you will see traffic coming across from mobiles handheld units and in my area definitely a lot of weather stations um so there's a plethora of information here and we can pick let's see let's pick this latest one that came in so this was an eyegate transmit looks like uh okay that was just for that node so let's go to this one aj6kw so aj6kw with a destination of aptt4 came in with this path and looks like some gps coordinates so he came in with some gps coordinates positioned with time he is using a tiny track so that's one of those cool little all-in-one devices and it's spitting out his coordinates course and any other information it's really cool just to see how much traffic you're going to get on these systems and the console um see here's another one coming in looks like a jeep on a mobile unit coming in here with some coordinates course altitude and he's monitoring on a 146520 so looks like Keith and I can hit him up on that frequency give him a chat and that's just really cool the terminal here isn't necessarily the place you're going to want to stock people on aprs definitely use the web interface to to do your stocking but that's just really cool to see what your radio is hearing directly because again the stuff posted on aprs.fi and aprs direct whoever station heard it first um is the one that gets to post it there so you may have heard it but you may have not been the one that reported it to the servers there so it's definitely something definitely cool to see just the raw data and see here we go here's just an eye gate transmit from frisco frisco peak just throwing a beacon out with its position and location in that this is a lc al 7 bx's rig uh good friend of mine he has helped me a lot with this aprs stuff we we definitely are working together to to build out more at the rs rigs in our area so i think we're pretty much up for time on the demo uh the wonderful radiogram talk was amazing and push the silver tad but no worries uh let's go answer some questions and chat if there are any i know this was kind of a drone out presentation live demo but uh let's see if there's any questions uh either in discord or in twitch here give it a quick glance and we'll get going here okay well definitely an earful there's definitely more resources for aprs if you want to get into aprs you want to uh carry it along with you or you want to expand aprs network yourself go ahead and hit me up in the ham radio village discord on the defconn server or our own ham radio village server i'll throw leaks in chat um just go ahead and i will even be able to help you remotely i've helped people with remote desktop remote uh yeah remote desktop to help set up their rigs so any help i can give i'm just more than happy to expand and contribute to the aprs community so thank you everybody and we'll see you back for closing comments here and just a little bit thank you


Hi everyone! In this video I want to recommend you one great free resource to help you learn to code, particularly to learn Python programming language by making video games using pygame module. My recommendation is websiteinventwithpython.com There you can find a lot of resources and step by step explanations how to learn Python and make games in Python with usage of pygame module. You can also find here few great free books to read on this site with all source code. That's all in this video. Thanks for watching. Happy coding!