Repository for the codeready workspaces Che assembly
Branch: master
Clone or download
nickboldt CRW-136 use 1.1.0 version for CRW while still depending on Che 6.19; …
…remove versions from depmanaged deps; set correct version of CRW Dashboard (not Che version), using CRWVersion = '1.1.0.GA (Eclipse Che 6.19)' string

Change-Id: Id619d42f6ea5df5668b0441b6430cb2266089269
Signed-off-by: nickboldt <nboldt@redhat.com>
Latest commit 8ac9dcb Feb 15, 2019

README.adoc

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 codeready/codeready-workspaces:latest . && \
docker images | grep codeready/codeready-workspaces | grep latest

You can then reference this image in your deployment (set image pull policy to IfNotPresent to avoid pushing the image to a registry).

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.access.redhat.com/codeready-workspaces/server:1.0

  • registry.access.redhat.com/codeready-workspaces/server-operator:1.0

  • registry.access.redhat.com/codeready-workspaces/stacks-cpp:1.0

  • registry.access.redhat.com/codeready-workspaces/stacks-dotnet:1.0

  • registry.access.redhat.com/codeready-workspaces/stacks-golang:1.0

  • registry.access.redhat.com/codeready-workspaces/stacks-java:1.0

  • registry.access.redhat.com/codeready-workspaces-beta/stacks-java-rhel8:1.0

  • registry.access.redhat.com/codeready-workspaces/stacks-node:1.0

  • registry.access.redhat.com/codeready-workspaces/stacks-php:1.0

  • registry.access.redhat.com/codeready-workspaces/stacks-python:1.0

How to Build Container Using Jenkins and OSBS (Brew)

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.