Go to file
Igor Vinokur 0ab386a65e update Readme.md
Signed-off-by: Igor Vinokur <ivinokur@redhat.com>
2023-04-17 17:07:36 +03:00
.github further simplifications 2023-02-07 14:16:46 +01:00
.mvn Set up maven build of core, plugins, dashboard, assembly 2016-02-12 09:47:39 +02:00
assembly chore: Bump to 7.64.0-SNAPSHOT in main 2023-03-27 15:40:05 +02:00
core Fix vuOAlnerable dependencies 2023-03-29 19:04:50 +02:00
deploy/cert-manager Remove the Helm chart. 2022-06-25 07:49:09 +09:00
dockerfiles chore: Update from ubi8-minimal:8.7-1049.1675784874 to ubi8-minimal:8.7-1085 (#453) 2023-03-02 14:15:53 -08:00
docs feat: re-add Grafana dashboard for JVM monitoring 2022-04-06 15:39:08 +02:00
infrastructures Fix vuOAlnerable dependencies 2023-03-29 19:04:50 +02:00
multiuser chore: Adding @Deprecated annotation to the unused services that will be removed in the future versions 2023-04-03 15:40:13 +02:00
typescript-dto chore: Bump to 7.64.0-SNAPSHOT in main 2023-03-27 15:40:05 +02:00
wsmaster chore: Adding @Deprecated annotation to the unused services that will be removed in the future versions 2023-04-03 15:40:13 +02:00
.gitattributes Add typescript 2016-08-09 06:29:32 -07:00
.gitignore Create tests for the "Typescript" and "Node-debug2" plugins (#19474) 2021-04-01 21:07:14 +03:00
LICENSE Fix remaining notes about old EPL 1.0 license (#10607) 2018-08-01 09:48:15 +03:00
NUMBERING.md Set up maven build of core, plugins, dashboard, assembly 2016-02-12 09:47:39 +02:00
README.md update Readme.md 2023-04-17 17:07:36 +03:00
RELEASE.md Update README.md and RELEASE.md (#19560) 2021-04-14 08:45:41 -04:00
check_properties_description.sh Properties script (#19253) 2021-03-16 12:04:53 +02:00
devfile.yaml chore: align volume name with plug-ins volume name 2021-12-16 11:43:32 +01:00
make-release.sh chore: always pull before push, and use rebase=true to resolve commits (#445) 2023-02-15 14:43:46 -04:00
pom.xml Revert "chore(deps): bump jgroups from 4.1.9.Final to 5.2.13.Final (#427)" (#473) 2023-03-30 12:35:13 +03:00

README.md

What is Che server

Che Server is a core component of the Eclipse Che. This component is responsible for creation and managing of Che workspaces, but will some day be replaced by the Dev Workspace Operator.

Project structure

Che Server is mostly a Java web application deployed on a Apache Tomcat server in a container.

  • 'pom.xml' The root Maven module, that lists all dependencies and structure.
  • 'assembly' - module for final assemblies of Che web applications
  • 'dockerfiles' - directory contains image Dockerfile for Che Server, as well as additional images.
  • 'core' - core and utility modules for Che.
  • 'wsmaster' - primary modules of the Che Server API.
  • 'multiuser' - modules related to multiuser implementation of Che.
  • 'infrastructure' - implementations for the underlying infrastructure, on which Che is running (Kubernetes, Openshift, etc.)
  • 'deploy' - deployment files for Helm installation.
  • 'typescript-dto' module, that provides DTO objects for typescript projects that may depend on Che Server, such as Che Theia.

Build requirements

  • Apache Maven 3.6.3 or Higher
  • JDK Version 11
  • Podman or Docker (required for running integration tests)

Sources build

Run mvn clean install to build. Activate a faster profile build by adding -Pfast

Image build and push

  1. Go to the dockerfiles directory.
  2. Run ./build.sh.
  3. Tag the che-server image with your account docker tag quay.io/eclipse/che-server:next <docker registry>/<your account>/che-server:next.
  4. Push the che-server image to your account docker push <docker registry>/<your account>/che-server:next.

Debug

  1. Deploy Che to an openshift cluster or minikube. Use the previously built image: chectl server:start --platform=<openshift / minikube> --cheimage=<docker registry>/<your account>/che-server:next
  2. Enable local debug of Eclipse Che server: chectl server:debug.
  3. In your IDE create a new Remote JVM Debug configuration on localhost:8000.
  4. Hit a breakpoint in the code and activate the debug configuration.

CI

There are several GitHub Actions workflows implemented for this repository:

  • build-next
    Builds Maven artifacts, builds container images and pushes them to quay.io on each commit to main branch.
  • Release Che Server
    Builds Maven artifacts and container images. Images are public and pushed to quay.io. See RELEASE.md for more information about this workflow.
  • Release Changelog
    Creates a GitHub release which will include a generated changelog.
  • Update Che docs variables
    Runs on each commit to main branch.
  • build-pr-check
    Builds Maven artifacts and container images. This workflow is used as a check for all pull requests that are submitted to this project.
  • Sonar
    Runs Sonar against the main branch. The result can be seen here.
  • Try in Web IDE
    Used as a check for pull requests that are submitted to this project.

Downstream builds can be found at the link below, which is internal to Red Hat. Stable builds can be found by replacing the 3.x with a specific version like 3.2.

License

Join the community

The Eclipse Che community is globally reachable through public chat rooms, mailing list and weekly calls. See https://www.eclipse.org/che/docs/stable/overview/introduction-to-eclipse-che/#_joining_the_community

Report issues

Issues are tracked on the main Eclipse Che Repository: https://github.com/eclipse/che/issues