 Mae'n gweithio'r un o'r rhaid. Ymlaen chi'n gweld yr aelod o gyflawni'r gyflawni ar gyfer Jenkin's X. Mae'n bwysig i gyd yn bwysig o'r ysgrifft. Felly nawr, mae'n fwy o'n gweithio'n gweithio. Mae'n gwneud i gael i gael gwrthodol yn gyflawni'r gyflawni, ac mae'n gweithio ni'n gweithio'r gweithio'r gilydd i'r llan. Mae'n gweithio'r gweithio'r gilydd, mae'n gweithio'n dweudio. So, lot of exciting things and strong James X presence as well. So, come along and find out what we've been doing. So, James S also another shout out for, because James S is not on this call today, because he is doing a webinar with CloudBees at the moment, as well as Jess Humble and Ben Williams as well from CloudBees. That's on in an hour's time, so people, if they haven't already, they should actually sign up and register for that webinar on the CloudBees website. They accelerate state of DevOps reports, which starts in an hour. So, go and do that as well. All right. So, just before I kick off, I've probably got something to demo. It's probably only a five minute demo. Is there anything anybody wanted to share or shout out at all just before we got started? Nothing at all, nothing at all. OK, cool. I'll just dive straight in then. So, one of the things I'm going to share on my screen. One of the things I've been looking at is around, as a previous open office at the work sessions, been talking around proud, integrating proud into Jenkins X. So, I've got a demo here. It's still a little bit work and progress. Code's going to be checked in over the next couple of days now. We've got to water meet a lot of it, but I wanted to show a quick demo. So, I've created, I've got Jenkins X running. And I've created a quick start on the spring boot quick start. I think it is with Jenkins X. If we go to the code, see it's just a bog standard. One we've already added in an index HTML. Let's go ahead and check out into a new branch, the demo. Let's make a code change. If you can see that. Let's just go ahead. Jenkins X demo. It's minus a minus m. Try something. Push demo. So, I'm going to push that code change into my demo branch on my Git repository. And then I'm going to make a pull request onto the master branch. Ignore some of this. It's just a couple of minutes. We've got a pull request. Let's go ahead and have a look at this. Again, these are just previous commits that I've been trying this out through the day. I've got a pull request. And this is just sitting there waiting to be merged. What's interesting is we've had an update now to say that it hasn't been approved by the bot user. This is the user that's when the pipeline is at. So, we haven't got, hasn't been approved yet. Let's just double check that. Refresh the page. We've also had a label added to it for the size. It's a medium. So, this is one of the plugins from Proud. Let's just have a little check to see how heavy, how big this change is. All right. What we're going to do, we haven't had any CI bills triggered yet. So, this is kind of cool. We've got some control over when things actually triggered. So, if you have contributions from other people, for example, you might want to validate that that's code changes from it. It hasn't done anything malicious that you're going to run on your CI infrastructure. Well, before I've done that, you've noticed actually something called Tide is saying has popped up. So, there hasn't been a check. So, what it's saying is Tide is something again from Proud that will automatically merge pool requests if they or their checks have passed. Now, you can configure these and set these up. This particular one is saying, well, it hasn't been approved. And also, well, yeah, that's the main reason it's not mergeable. You can also add extra things like if work-in-progress was in the title, we'd automatically have a label of work-in-progress or you can put hold as well. And basically, Tide, they're not all to merge unless all those labels have been removed as well. So, that's fine. Tide is waiting to merge this. Let's trigger a test. Now, if I do a Qubes CPL get pods, let's see what's actually happening. Well, we can see we've got a pod that's actually been started. OK, that's good. That's what we'd expect. It's actually got an init container. We've got two out of three init containers running. This is because this is a Knative build. So, Proud has received a webhook event from GitHub from that comment and it's created a Knative build object which the build controller has then started a pod for, which we see here. Now, we can actually, we've got a better demand for this, but for now, let's just do logs. It should work with JXB soon as well, but we can actually go and have a look at the logs in the container. And you can see this is our Jenkins logs, which is great. Going to Nexus and pulling down. OK, so that's actually building now. Now, I guess you're probably wondering, you've seen this before, why am I so excited about this? I will show you. Let's also look at our deployments. Qubes CPL, CPL, get deployments. Now, here's Jenkins. You can see we've actually scaled it back. Jenkins isn't running. We don't have a Jenkins master running. What we have is the awesome work from Koske and Oleg have been doing in the Jenkins community. Jenkins file runner. In the Knative build pod is a one-shot Jenkins that is being started and running our pipeline. You can actually see this is a slightly modified Jenkins file, but here it is. Here we're going to clean this up a little bit, but this is just an average Jenkins file that's being run inside that one-shot master. And then, if we go back to our pull request, we should probably have a look. That's probably going to finish shortly. Here it is running. And then, there we go. We can see it's been built. Preview of our O-Ball, if it started up as well, I'll probably refresh it a couple of times. But that will actually then be running. I think we're getting enough resources. We will promise you. We'll also do that. I'll just finish it off. The developer workflow we're actually advocating is round from the Kubernetes ecosystem. So this is very familiar for people that have been developing in the open source project around Kubernetes and using comments over pull requests to actually control your pipelines. So let's approve this. We have flexibility. What that's going to do is that go back to Proud. It's going to say, OK, let's add the approve label to this. Well, there we are. Oh, because I haven't been added to the owners. OK, scrap that. What that would have done is add, if the owner's file inside the Git repository had my name, it would add a label there, and then Tide would have gone on to automatic merge it just for completeness. There we go. So that was it. It was really kind of quick, very, very short. There's lots more that we're going to be showing. I just wanted to give a little bit of a sneak peek early on just to show what we're actually doing. So, yes. How was that? Was there any questions on that? That was great. When do you think it will be sort of integrated in? So I'm hoping certainly part of it has already been, I might share my screen anymore. I'm not. No, it's just you now. OK, cool. So I've started adding it in. So there'll be a pull request on JX. I've got a fork at the moment of Prowl, which just adds support for some environment variables and the status updates that go back. So I'm not sure when I'm going to get that in because it's a bit messy at the moment. But hopefully by the end of the week I'm going to have something in so that we can actually then figure out what's missing. For example, garbage collection GC jobs are actually failing because there's no Jenkins there to see if pull requests have been closed and a few other things. So I'm sure there's going to be a few things that we're going to have to figure out early next week. But the idea is to get something in. We'll probably do it along with your work around Terraform. So we'll enable it through JX create Terraform with a Prowl and then work out that flow and make sure that's nil before then we switch over everyone over. But what it means is that Jenkins is being fired up one shot. We gather all those test results and everything like that we will do. Jenkins isn't always running. So we've got a lightweight hook endpoint which is scalable as well so it's highly available. And then when the build's finished Jenkins goes away then Jenkins energy goes away. So it's pretty exciting stuff that we're actually doing and working with the Jenkins community as well to make sure that we can bring it coming together and aligning. Any other questions? No. So all right. I mean that was a really, really quick one. But I do think I am conscious because we've got everybody's under some pressures let's say for the Jenkins world which is in a week and a half. So I wonder if maybe we should probably leave it there if nobody else has got anything else. I know next week we're expecting there's going to be a JX login that Cosmin is working on. So that's really exciting as well. We've got a team controller that Gareth is working on as well which again so we can actually spin up those multiple teams nicely and easily. And the roles of N are coming as well. Also Ian has done some cracking work as well making sure that we haven't got any user secrets in cluster. We're just using pipeline tokens. So there's lots of cool stuff that's coming and hopefully by the end of next week we'll have it all committed and usable for everyone. All coming together for Jenkins world. Yeah just in time. Exactly. All right then. Well if nobody else has got anything to add. Oh Tracy I just saw you pop up there. Hey Tracy. So yeah if nobody's got anything else to add let's call it a day shall we? Cool. All right take care. See you all soon.