Skip to content

Repository for the codeready workspaces Che assembly

License

Notifications You must be signed in to change notification settings

ScrewTSW/codeready-workspaces

 
 

Repository files navigation

What’s inside?

This repository hosts CodeReady Workspaces assembly that mainly inherits Eclipse Che artifacts and repackages some of them:

Differences as compared to upstream:

  • Customized Dashboard (pics, icons, titles, loaders, links)

  • Samples and Stacks modules

  • Bayesian Language Server and agent

  • Product Info plugin (IDE customizations: pics, titles links)

  • Custom Dockerfile based on official RH OpenJDK image from RHCC

Note
Dockerfiles in this repo are NOT the ones used to build RHCC container images in OSBS.

How to Build

Pre-reqs

JDK 1.8+ Maven 3.5+

Build Assembly

Run the following command in the root of a repository:

mvn clean install
Note
Since the build includes GWT compilation it may take more than 3 minutes to complete.

The build artifact used in the Docker image will be in assembly/assembly-main/target/codeready-${version}/codeready-${version}

How to Build Container Image Locally

First, build the CRW assembly in this repo:

mvn clean install

Then just use the Dockerfile in this repo to build:

docker build --force-rm -t registry.redhat.io/codeready-workspaces/server-rhel8:1.2 . && \
docker images | grep registry.redhat.io/codeready-workspaces/server-rhel8:1.2

You can then reference this image in your deployment (set image pull policy to Always to make sure it’s pulled instead of the default one).

For more info on how to test locally built changes in a local OKD 3.11 (Minishift 1.34) cluster, see Build CodeReady Workspaces server container locally and deploy using Minishift.

Note

Stacks may reference non-existing images like docker-registry.default.svc:5000/openshift/rhel-base-jdk8. These images are built as a post installation step.

Once published, they will be in locations like these:

  • registry.redhat.io/codeready-workspaces/server-rhel8:1.2

  • registry.redhat.io/codeready-workspaces/server-operator-rhel8:1.2

  • registry.redhat.io/codeready-workspaces/stacks-cpp-rhel8:1.2

  • registry.redhat.io/codeready-workspaces/stacks-dotnet-rhel8:1.2

  • registry.redhat.io/codeready-workspaces/stacks-golang-rhel8:1.2

  • registry.redhat.io/codeready-workspaces/stacks-java-rhel8:1.2

  • registry.redhat.io/codeready-workspaces/stacks-node-rhel8:1.2

  • registry.redhat.io/codeready-workspaces/stacks-php-rhel8:1.2

  • registry.redhat.io/codeready-workspaces/stacks-python-rhel8:1.2

  • registry.redhat.io/codeready-workspaces/stacks-node:1.2

How to Build Container Using Jenkins and OSBS/Brew (REQUIRES VPN)

If you have access to Red Hat VPN, clone the pkgs.devel repo, then run the get-sources-jenkins.sh script to pull the latest dependency tarball into the local project, and trigger a Brew build.

kinit
git clone ssh://kerberos-username@pkgs.devel.redhat.com/containers/codeready-workspaces
cd codeready-workspaces
./get-sources-jenkins.sh

See also:

See this document for more on how to use those build systems, in order to publish a container image to Red Hat Container Catalog:

Keeping in sync with upstream

The Dockerfile and entrypoint.sh scripts in this repo are copied from upstream repo into this one using a Jenkins job which adjusts it so it will work locally.

Therefore any changes to files in this repo which also exist in upstream will be overwritten. Instead, push your changes into the pkgs.devel repo, and run the job to merge them into this one.

Branding

To reskin this assembly, you need to edit the following files:

See also SVG assets in product/branding/ folder.

Note
When saving files in Inkscape, make sure you export as Plain SVG, then edit the resulting .svg file to remove any <metadata>…​</metadata> tags and all their contents. You can also remove the xmlns:rdf definition. This will ensure the GWT UI will compile correctly. Inkscape SVG files will cause compilation errors every time.

About

Repository for the codeready workspaces Che assembly

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 85.9%
  • Shell 12.7%
  • Other 1.4%