Commit Graph

50 Commits (7ebc634d1b09b9d71dec3f80cfa47ee117360e8f)

Author SHA1 Message Date
Mykhailo Kuznietsov 1170a06bb9
Add Proxy env variables for workspace containers in Openshift and Kub… (#10387) 2018-07-31 17:27:36 +03:00
Oleksandr Garagatyi e17fbed76f Small fixes WS.NEXT deployment readme
Signed-off-by: Oleksandr Garagatyi <ogaragat@redhat.com>
2018-07-19 09:54:29 +02:00
Roman Iuvshyn bfd32d65fe
clean up k8s config map (#10391)
* clean up k8s config map
2018-07-12 11:56:55 +03:00
Roman Iuvshyn 19ecb7d8bd
set default k8s namespace to che (#10366)
* allow to override CHE_INFRA_KUBERNETES_NAMESPACE during deploy che on k8s with helm
2018-07-10 18:31:46 +03:00
Sergii Leshchenko a2c3a2229c
Added an ability to specify custom ocp tools dir (#10302)
* Fix evaluation of OC version in ocp.sh script

* Add an ability to specify custom ocp tools dir

The motivation to do that is not to download oc and jq
binaries each time after reboot since default folder is located in tmp
folder
2018-07-06 10:24:32 +03:00
Eugene Ivantsov cf0db82b97 Make initial pvc claim configurable 2018-07-05 16:33:18 +03:00
Guy Daich 7802427a32 Update readme.md (#10152)
Fix Routing Strategy Docs
2018-07-05 14:37:11 +03:00
Oleksandr Garagatyi 9fe9021330
Adjust Workspace.Next model classes to latest updates in the Workspace.Next vision (#10246)
Rework model, of CheService and renamed it to ChePlugin. 
Replace features hosting to apache server to be able to host plugin files and avoiding having model files for Go lang.
Host YAMLs instead of JSONs. Downloads and parse ChePlugin YAMLs instead of JSONs from the marketplace.
Improve unit tests coverage. 
Add support of Che Server protocol and path, so it is possible to run Classic GWT IDE in Workspace Next now.
Signed-off-by: Oleksandr Garagatyi <ogaragat@redhat.com>
2018-07-04 18:13:20 +02:00
Dmytro Nochevnov 363126c7a5
Fix start of workspaces of Eclipse Che Singleuser on OCP (#10146)
Signed-off-by: Dmytro Nochevnov <dnochevnov@codenvy.com>
2018-06-22 10:30:26 +03:00
Roman Iuvshyn 86a56b0133
Update deploy_che.sh (#10126) 2018-06-21 10:37:28 +03:00
Dmytro Nochevnov c55a2db96c
Setup OCP to create objects under the certain user account (#10114)
Signed-off-by: Dmytro Nochevnov <dnochevnov@codenvy.com>
2018-06-20 12:41:27 +03:00
Sergey Skorik 509e83955f
Fix image-che-flag
Use the right env name
2018-06-18 09:59:40 +03:00
Eugene Ivantsov 5fed493c90 Fix ocp.sh 2018-06-13 09:19:09 +03:00
Oleksandr Garagatyi bddbd658bf Add Workspace Next support to Openshift recipe/infra
Signed-off-by: Oleksandr Garagatyi <ogaragat@redhat.com>
2018-06-08 17:10:24 +03:00
Oleksandr Garagatyi ddba875800 Fix incorrect link to Che docs
Signed-off-by: Oleksandr Garagatyi <ogaragat@redhat.com>
2018-06-08 15:26:27 +03:00
i300543 34e6ab326f Improve wsmaster OpenIdConnect configurability, and helm deployment scripts (#9826)
* Improve wsmaster OpenIdConnect configurability, and helm deployment scripts
- Make username claim configurable  in cases
  Oidc provider does not support the default claim (default is "preferred_user")
- Introduce fallback for username (issuer+subject) if the username claim is not present
  in the token
- Extend helm scripts to take customOidcProvider and customOidcUsernameClaim
  parameters into account when deploying che master.
- Introduce cheDedicatedKeycloak global param, conditioning if dedicated che
  keycloak server should be deployed, and waited on by the master.
- default value for cheDedicatedKeycloak (if not defined) is true
  if the cheDedicatedKeycloak parameter is defined and is false,
  customOidcProvicer must be supplied, when using multiuser mode.

Signed-off-by: Sergey Kuperman <sergey.kuperman@sap.com>

* Code review fixes

Remove the extra if condition in configmap.yaml
Remove extra line in requirements.yaml
fix typo in deployment.yaml

* Add che.keycloak.username_claim property as NULL into multiuser.properties

* Simplify helm conditions, when deploying che master with or without keycloak

if multiuser = true, and .Values.customOidcProvider was supplied, assumption is that
we work with no keycloak (no waiting in deployment)

global.cheDedicatedKeycloak is still needed as separate variable for requirements.yaml to determine whether keycloak chart should be installed

so for keycloak deployment, no parameters need to be passed beside global.multiuser=true,
for custom OIDC :
.Values.customOidcProvider=http://url, and global.cheDedicatedKeycloak=false
both need to be set
2018-06-06 10:35:04 +03:00
Oleksandr Garagatyi 2fcdcf1fda CHE-8265: Add an ability to try Workspace.Next on k8s deployment
Signed-off-by: Oleksandr Garagatyi <ogaragat@redhat.com>
2018-06-05 10:02:03 +03:00
Oleksandr Garagatyi 5dc9479073 Fix incorrect address in kubects deployment
Signed-off-by: Oleksandr Garagatyi <ogaragat@redhat.com>
2018-06-04 14:48:31 +03:00
Eugene Ivantsov 29cb708773 Adding self signed cert to Java trust store 2018-05-30 12:27:41 +03:00
David Festal e0890235fa
Allow creating OpenShift objects under the current user account on OCP (#9577)
* Support identity provider token retrieval in both JSON or URL formats.

That's required because some identity providers (such a `openshift-v3`)
correctly return the token information in JSON, as expected. So
switching to the url-based syntax should only used when the returned
json is invalid.

Signed-off-by: David Festal <dfestal@redhat.com>

* Introduce an `OpenShiftClientConfigFactory` to allow customizing the OpenShift config returned according to the current context (workspace ID, current user)

Signed-off-by: David Festal <dfestal@redhat.com>

* Openshift Infra + Multi-user => allow using OpenShift identity provider to connect to openshift with the OS oauth token of the current Che user.

This introduces a new property:

`che.infra.openshift.oauth_identity_provider`

Signed-off-by: David Festal <dfestal@redhat.com>

* Notify the user when a workspace cannot be started from the nav bar.

Signed-off-by: David Festal <dfestal@redhat.com>

* Add the ability to install the Openshift certificate into Keycloak

Signed-off-by: David Festal <dfestal@redhat.com>

* Add a yaml file to provide the openshift certificate as a secret,

in case it has to be installed into the dedicated Keycloak server.

Then the commands to install Che multiuser on Minishift with this
certificate are:

```
oc new-project che

oc process -f multi/openshift-certificate-secret.yaml -p
CERTIFICATE="$(minishift ssh docker exec origin /bin/cat
./openshift.local.config/master/ca.crt)" | oc apply -f -; \
oc new-app -f multi/postgres-template.yaml; \
oc new-app -f multi/keycloak-template.yaml -p ROUTING_SUFFIX=$(minishift
ip).nip.io; \
oc apply -f pvc/che-server-pvc.yaml; \
oc new-app -f che-server-template.yaml -p ROUTING_SUFFIX=$(minishift
ip).nip.io -p CHE_MULTIUSER=true -p
CHE_INFRA_OPENSHIFT_OAUTH__IDENTITY__PROVIDER=openshift-v3; \
oc set volume dc/che --add -m /data --name=che-data-volume
--claim-name=che-data-volume
```

Of course it's still needed to register the `openshift-v3` identity
provider in the Keycloak server, as well as, add the corresponding
`OAuthClient` object in Minihshift.

Signed-off-by: David Festal <dfestal@redhat.com>
2018-05-28 11:39:44 +02:00
Dmytro Nochevnov 6c0f87c29a
Wait until Che is available when deploying it on OCP (#9783)
Signed-off-by: Dmytro Nochevnov <dnochevnov@codenvy.com>
2018-05-23 23:13:21 +03:00
Eugene Ivantsov 4493c8e5d0 Make client id and secret configurable from command line 2018-05-18 11:12:29 +03:00
Sergii Leshchenko 459acb5bb6 Fix project parameter usage example in deploy_che.sh script 2018-05-17 11:50:00 +03:00
Anton Korneta fc04f59045 Increase termination grace period to 6 minutes 2018-05-17 11:50:00 +03:00
Eugene Ivantsov c835bf3172
Merge pull request #9619 from sleshchenko/deployChe
Add logging of Kubernetes/OpenShift unrecoverable events
2018-05-07 10:15:18 +02:00
Dmytro Nochevnov ab9d485d8d Fix Eclipse Che deploy on OCP (#9627)
Signed-off-by: Dmytro Nochevnov <dnochevnov@codenvy.com>
2018-05-05 10:57:41 +02:00
Sergii Leshchenko 279d85b728 Add name of an unknown argument in error message 2018-05-04 17:36:01 +03:00
Eugene Ivantsov a22a2b3510
Update deploy_che script (#9513)
* Update OpenShift Origin version to 3.9

* Deploy script uses templates

* Pass args to deploy script

* Remove old scripts and yamls

* Add missing args to ocp.sh help and and help to deploy_che.sh

* Small fixes

* Remove mistakenly added file

* Remove mistakenly added file

* Remove -a in docker ps to get registry container

* Do not pass args but export envs in ocp.sh

* Messed envs a bit

* Delete test service that is used to compute routing suffix

* Remove unnecessary port from Keycloak route

* Fixes

* Fixes

* Typo

* Minor fixes
2018-05-04 11:36:41 +02:00
Eugene Ivantsov 86f34103d1
Remove Keycloak job, use the right entrypoint, add envs the script requires (#9533) 2018-04-26 13:38:04 +03:00
Eugene Ivantsov b9346ee246
Update OpenShift Origin version to 3.9 (#9509)
* Update OpenShift Origin version to 3.9

* Update grep to verify docker registyr container is in running state

* Do not list exited containers when looking for Registry container ID
2018-04-23 18:05:00 +03:00
Eugene Ivantsov b062bdfb33
Use -gt as comparison operator (#9497) 2018-04-19 15:57:24 +03:00
Eugene Ivantsov c40a14e45e
Fixes to ocp script (#9493)
* Fixes to ocp script

* Remove duplicated env
2018-04-19 14:10:06 +03:00
Eugene Ivantsov b4c9fa91ea
Make Keycloak Admin configurable (#9490)
* Make Keycloak Admin configurable

* Make Keycloak Admin configurable

* Fix typos
2018-04-19 14:09:39 +03:00
Oleksandr Garagatyi 004d2a07f7
CHE-9428: fix kubernetes infra after a merge of not checked PR (#9446)
Set correct bindings of generics, fix generics;
Add missing properties in che.properties and kubectl deployment.
Signed-off-by: Oleksandr Garagatyi <ogaragat@redhat.com>
2018-04-18 12:48:21 +03:00
Sergii Leshchenko 09149b296f
Fix command for launching minikube with RBAC in helm chart readme (#9468) 2018-04-17 17:30:52 +03:00
Eugene Ivantsov fa046bd6e3
Use templates only to deploy Che to OpenShift (#9190)
* Use templates only to deploy Che to OpenShift

* Avoid breaking existing scripts

* Avoid breaking existing scripts

* Fixes

* Cleanup

* Cleanup

* Fixup

* New line and typos

* New line and typos

* Update dc/che. Env variables

* Remove creationtimestamp

* Template cleanup. Update README

* Fix DB URL env

* Add missing keycloak param

* Changes to ocp.sh to use new templates. Fix Keycloak template

* Env support

* Update server yaml. Update ocp.sh

* Configure CHE_IMAGE and CHE_TAG

* Add recycler

* Revern recycler sa

* Using credentials and creating ws in separate namespaces

* Use custom Keycloak image

* Use custom Keycloak image

* Remove use of credentials
2018-04-17 14:29:59 +03:00
Ilya Buziuk 6f3842bfeb che #9376 Setting default postgres image for 'deploy_postgres_only.sh' instead of failing if 'IMAGE_POSTGRES' env var is not set
Signed-off-by: Ilya Buziuk <ibuziuk@redhat.com>
2018-04-12 11:04:01 +02:00
Max Shaposhnik 161ff9416c
Configure JPA L2 cache coordination between instances on Openshift® / Kubernetes (#8982) 2018-04-11 13:44:15 +03:00
Guy Daich a48d4b42c8 k8s-infra: routing, TLS (rebased) (#9329)
Introduce an External Server Exposer Strategy, 
responsible for exposing service ports associated with external servers,
making them accessible from outside the cluster.
Move server exposure to shared k8s infra level:
- multi-host: unique hostname for each component, like Che Openshift infrastructure.
- single-host: single hostname for all components. Can be used in conjunction with TLS.
- default-host: default ingress hostname. Can be used for local development without dynamic DNS (based on ingress IP).
Add basic TLS support.
Signed-off-by: Guy Daich <guy.daich@sap.com>
2018-04-10 09:53:23 +03:00
Oleksandr Garagatyi 131ae27612 CHE-9275: Add setting of an env var to configure master logs encoding
Add setting of env var CHE_LOGS_APPENDERS_IMPL that sets Che master
logs producing configuration to deployments for:
- docker (che.env)
- kubernetes (kubectl)
- kubernetes (helm)
- openshift (scripts)
Signed-off-by: Oleksandr Garagatyi <ogaragat@redhat.com>

Signed-off-by: Oleksandr Garagatyi <ogaragat@redhat.com>
2018-04-06 09:16:49 +03:00
Anton Korneta 0afb356487 Disable che-data pvc creation for musltiuser che deployment 2018-03-28 11:17:20 +03:00
perspectivus1 c4896a1559 Fix K8s Helm Chart (#9230)
* Fix Kubernetes Helm chart name to match directory name (see PR 9143)

Signed-off-by: Eyal Barlev <perspectivus@gmail.com>
2018-03-27 17:48:46 +02:00
Roman Iuvshyn e38b7e963a
Allow to override CHE props defined in che-config file (#9240) 2018-03-26 14:20:43 +03:00
Roman Iuvshyn 03a06813e9
ocp.sh clean up (#9207)
ocp.sh clean up
2018-03-23 15:46:31 +02:00
Roman Iuvshyn e2e8ad95ae fix wait CHE pod in deploy script
both `available` and `progressing` should be "True" to treat deployment as successful
2018-03-22 16:30:16 +02:00
Roman Iuvshyn 67e95e9eaf fix deploy che multiuser
make KC configuration before CHE pod start
2018-03-22 14:44:03 +02:00
Roman Iuvshyn 123c3adde3 ocp.sh clean-up
ocp.sh clean-up
2018-03-22 11:31:51 +02:00
Roman Iuvshyn bd3c1956a2
fix deploy_che.sh ability to be launched from any place (#9165)
* fix deploy_che.sh ability to be launched from any place
2018-03-21 14:31:51 +02:00
Roman Iuvshyn 80b415fdd5
fix ocp.sh ability to be launched from any place (#9159)
* fix ocp.sh ability to be launched from any place
2018-03-21 12:05:44 +02:00
Oleksandr Garagatyi d047863484 Move deployment files out of dockerfiles folder
Move openshift/k8s deployment files from dockerfiles/init folder
to deploy folder with a better structure because they are not
related to init dockerfile.
Add readme files in each deployment target folder with links to
Che docs where the process of deployment is described.
Remove delivery of deployment files by init image which is
useless.
Remove empty docs files from the repo and init image.
Fix some minor typos and trailing spaces.
Signed-off-by: Oleksandr Garagatyi <ogaragat@redhat.com>
2018-03-20 22:13:24 +02:00