 Hello everyone, thanks for joining. My name is Artem Zasarin and I'm working for Red Hat on Eclipse chair project. Also my team is working on Eclipse tier project. It's actually used by Eclipse chair as a editor. So we are going to talk about integration between Eclipse chair and OpenShift how it allows you easily get started with cloud-based web development in order to get your application deployed to OpenShift cluster. First of all I want to just count the steps that we usually need to do when we want to start some web development and deploy our app to OpenShift cluster. Of course we need some ID, whatever we like, Eclipse we have got. We need some general development tools like build systems, Russian control systems. We have to continue our application with some tools like Docker or Podman. We have to write Docker files for our frontend application, backend application, prepare images. We have to, we need several CLI tools to communicate with the remote cluster like kubectl, audio, OEC. We have to describe our application in terms of cluster objects. We have to write several young descriptors for our services, pods, and so on. Of course we can add many more steps here but let's talk about what Eclipse check and propose here. Just a couple of words for those who maybe haven't heard about Eclipse chair. It's a cloud- native ID which means that it can not only be deployed to OpenShift cluster but also you are able to deploy your application that you are working on from your development environment to the cluster using the Kubernetes and OpenShift toolings that Tech with the chair provides. I will talk, I will show you in my demo in details what OpenShift chair toolings represent. Now just mention that OpenShift chair toolings is actually a chair plugin. It includes we have got OpenShift connector extension with all the dependent CLI tools like OEC, ODO and all the stuff running in the sidecar container within my chair workspace. So in this example I have OpenShift chair toolings connected to my chair development environment and it brings the functionality that we as code plugin brings. It's possible because internally we are using Eclipse TEA project which has the plugin system which is I guess almost fully compatible with we as code extension system. One important concept, important feature that they want to mention it's a chair dev file. I will show you more in my demo and chair dev file is actually description, YAML description of it looks like this which allows you to describe your entire development environment in one YAML file. It can be easily shared, reproduced by your colleague, by any member of your team. So you have once described your environment and get this YAML, give this YAML to your colleague and he or she can reproduce run exactly the same environment with the same runtime containers for your applications. In this example I have for example a couple of projects declared for front-end, for front-end, back-end. I can also describe several components. Usually it's chair plugins but here I can add some runtime containers for my application like with Node.js for my front-end, with Maven and Java for my back-end. Also in this dev file it's possible to add some several commands which I can run from my IDE just in one click and it will be running in the container where it's supposed to be running. Yeah, on this example it's how the OpenShift chair plugin is added, is declared in chair dev file and when my workspace is started it will bring the functionality of the plugin to my IDE. Yeah, demo. Let's look how it's looking. Here is my instance running. It's running locally on code ready containers. It's a local OpenShift cluster, single node cluster and for this workspace I have the dev file with my front-end sources, back-end sources. Here I have the Node.js container declared to work with my front-end, to build it, to run in container for back-end, OpenShift plugin, so everything that they need and also several commands, for example, for running my front-end. I have command declared with all the parameters. Yeah, so here is my workspace is running. Let's assume I need to work on some feature. So here is my workspace panel where I have my containers for back-end, front-end, all the commands from my dev file are represented here and in order to build my front-end project I'm running better. So there is a command for building my front-end application. Actually it does npm install with one click. Yeah, it's ready. And my back-end, let's do maven package, it's ready. So now we can run my back-end. It's spring boot application, back-end is ready. And run the front-end. So my back-end and front-end are running in separate containers. For back-end it's one container, for front-end separate side car. Here Eclipse share has detected then that in one of my containers within the workspace some application is running. It's available on port 30000. Let's, we can open it and it will be opened inside the, in the embedded, embedded web browser. It's a simple web browser just for previewing your applications. Now let's assume I, I need to make some changes. For example, let's change that wild east to wild west. I find it in my sources. Yeah. And now I can just refresh in that embedded browser, the page and changes will be here since the, there is npm watch command is running. So I can quickly iterate in my front-end. Now let's assume I, I have to deploy my application to OpenShift cluster, like staging a production cluster. Here we have the functionality that is, that we as code extension brings, which, which is packaged inside the share plugin. First of all, I need to connect to my cluster. Here I have command. It's also from the file. Let's login. Yeah. I'm logged in. And here on this panel, all the OpenShift projects that in my cluster. Now, in order to deploy my application, I, I have to create, I have to create a separate project in my cluster with new project command. Let's name it share one. It's here. And I have, I, and now we should create a separate component for separate, for separate part of my application. So one component for backend, new component. It's a, here we should type the name of OpenShift application, like Wild West. Since my backend is based on jar file, here we should pick binary file. Then we should specify the context folder. So where our binary is located. It's in backend, target directory. Here's our jar file selected. And now component name backend. Here we can choose the type of runtime for our backend application. Since it's Java application, let's pick Java, the latest version. Yeah. And our backend component successfully created. Here it is. It's just a descriptor of our components. So we have to push the changes to the cluster. In time, we can, we can open OpenShift web console, select our application. And here we can see that our backend is running. We can see that all the information manage it. While it's starting, we can create a component for our frontend application. New component. Since it doesn't have binary, it's not just application. We have to, to specify just workspace directory. Context folder. It's in projects frontend. Component name frontend. It will be not just runtime, the latest version. And do the same stuff. Push the changes to the cluster. So on OpenShift console, we can see that our backend is already running and frontend is, is going to be run. Okay, let's wait a bit. Thinking files. By the way, oh yeah, it's ready. It's running. Now we have to create the link, the link for our frontend component, which we can use in order to, to get the frontend. Push the changes. Yeah, and let's try to open the link. It points to our OpenShift cluster. But since our frontend doesn't know where our backend is located, we have to link the frontend with backend, with a special command. Link component. It means that in frontend sidecar container, environment variable will be injected, which points to the backend component. Link component, link to backend to port 8080. Let's refresh the page. Yeah, it's, it's because the frontend is restarting because it, it, it, it had to be configured. Okay, looks like it's ready. Refresh the page. Yeah, and we have, we, we see that our frontend connected to backend. Yeah, also we, from Eclipse chair environment, we can, we can watch the logs of our components. Like show logs. Frontend. Yeah, so in, in this demo, you've just seen how, how the, how you can use Eclipse chair to, to deploy, on the simple example, to deploy your application to OpenShift cluster. Okay. For Eclipse chair, you can, with Eclipse chair, you can simplify your development of your web application with help of such tools as DevFile, which you can use to describe your environment once and share it, with help of chair plugins, which brings the, which can bring the, with code functionality to Eclipse chair. And with help of tight integration of Eclipse chair and OpenShift, it's, it's possible. So if you, if you want to learn more about Eclipse chair, here is the GitHub repository for Eclipse chair, for DevFile. We have a plugin registry repository where you can find the existing plugins or contribute to your own plugin. Here is the redmi file, there's a documentation available in the repository. We have Metamoth channel for all the communications about Eclipse chair. Made and pleased. We have each second Monday, we have a community call where you can join and ask the question, propose some changes. Yeah, I think that's it for my short demo about Eclipse chair. Thank you. Maybe, maybe some questions. There is a plans, our PM to, to add more earth head to links like pipeline switches into Eclipse chair to bring it. Also, you can, you can try the hosted version of Eclipse chair if you don't want to run it on your machine. It's on chair.openshift.io. No, it wasn't in open shift environment. It was on my, within my Eclipse chair workspace, which is deployed inside open shift. So it was done in sidecar container. Yeah. And, and chair, chair open, open shift chair plugin has the command for watch, for running watch mode on your front end. It takes more time than, than running it inside your chair workspace. I mean, in, in a front end container. It takes more time, but it can be used also to watch the changes on, on, on your editor and immediately apply it to push it to your open shift cluster. Actually, yeah, there are, there are several commands which is, which is useful. I, I won't show all of them, but you can, you can explore. If no more question, then thank you very much.