che-server/core
David Festal 21e00e9b15
Make CHE 6 multi-tenant compatible for OSIO (#8805)
* Copy the boostrapper config file to POD *installer by installer* to avoid executing a huge command, which in turn tries to send a huge GET request (73kb-long URL).
This long GET request was previously not supported by the fabric8 oso proxy.

See https://github.com/openshiftio/openshift.io/issues/2254 for more
details. 

* Make the Kubernetes / Openshift infrastructures multi-tenant-compatible

This includes:

1. Reworking the `KubernetesClientFactory` and `OpenshiftClientFactory`
to:
    - share a single `OkHttpClient` that is the basis of all created
Kubernetes or Openshift clients potentially pointing to
different.cluster URL with different authorization tokens
    - provide the workspaceId in the `create` methods whenever it's
available (workspace start / stop, idling, etc ...
    - have distinct methods for creating the Kubernetes client and the
Openshift client (required since the Openshift client creates connection
leaks on some calls such as exec of POD watch)
This is the implementation of issue
https://github.com/redhat-developer/rh-che/issues/516

2. Adding the `userId` into the SPI `RuntimeIdentity` object. Currently,
only the `userName` is available in this object that gathers information
about the identity attached to a workspace runtime. This change is
required because the `userId` should be accessible from the
`workspaceId` for implementing multi-tenancy and creating workspace
resources in a user-specific location.
This is the implementation of issue
https://github.com/redhat-developer/rh-che/issues/501

* In the Openshift infrastructure, the authentication interceptor should
always convert userName/password-based authentication to
oauth-token-based authentication, even when using the
`KubernetesClient`.

Signed-off-by: David Festal <dfestal@redhat.com>
2018-02-22 18:23:10 +01:00
..
che-core-api-core Perform liveness checks of wsagent by dedicated URL 2018-02-21 12:15:12 +02:00
che-core-api-dto RELEASE: Set next development version (#8773) 2018-02-14 15:00:52 +02:00
che-core-api-dto-maven-plugin RELEASE: Set next development version (#8773) 2018-02-14 15:00:52 +02:00
che-core-api-model Make CHE 6 multi-tenant compatible for OSIO (#8805) 2018-02-22 18:23:10 +01:00
che-core-db RELEASE: Set next development version (#8773) 2018-02-14 15:00:52 +02:00
che-core-db-vendor-h2 RELEASE: Set next development version (#8773) 2018-02-14 15:00:52 +02:00
che-core-db-vendor-postgresql RELEASE: Set next development version (#8773) 2018-02-14 15:00:52 +02:00
che-core-dynamodule-maven-plugin RELEASE: Set next development version (#8773) 2018-02-14 15:00:52 +02:00
che-core-gwt-maven-plugin RELEASE: Set next development version (#8773) 2018-02-14 15:00:52 +02:00
che-core-typescript-dto-maven-plugin RELEASE: Set next development version (#8773) 2018-02-14 15:00:52 +02:00
commons RELEASE: Set next development version (#8773) 2018-02-14 15:00:52 +02:00
pom.xml RELEASE: Set next development version (#8773) 2018-02-14 15:00:52 +02:00