Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Setup of the DevWorkspace version of the Happy path e2e test #18888

Closed
l0rd opened this issue Jan 26, 2021 · 8 comments
Closed

Setup of the DevWorkspace version of the Happy path e2e test #18888

l0rd opened this issue Jan 26, 2021 · 8 comments
Assignees
Labels
area/qe engine/devworkspace Issues related to Che configured to use the devworkspace controller as workspace engine. kind/enhancement A feature request - must adhere to the feature request template. kind/epic A long-lived, PM-driven feature request. Must include a checklist of items that must be completed. severity/P1 Has a major impact to usage or development of the system. sprint/current

Comments

@l0rd
Copy link
Contributor

l0rd commented Jan 26, 2021

Is your enhancement related to a problem? Please describe.

That's related to #17307

Describe the solution you'd like

We should start testing DevWorkspace based workspaces. Note that, at first, editors plugins won't be supported.

@l0rd l0rd added the kind/enhancement A feature request - must adhere to the feature request template. label Jan 26, 2021
@l0rd l0rd added this to the DevWorkspace Integration - STEP1 milestone Jan 26, 2021
@l0rd l0rd added engine/devworkspace Issues related to Che configured to use the devworkspace controller as workspace engine. area/qe severity/P1 Has a major impact to usage or development of the system. kind/epic A long-lived, PM-driven feature request. Must include a checklist of items that must be completed. labels Jan 26, 2021
@dmytro-ndp dmytro-ndp self-assigned this Feb 8, 2021
@dmytro-ndp
Copy link
Contributor

Actually, the issue is blocked by #18842

@rhopp
Copy link
Contributor

rhopp commented Feb 9, 2021

Meeting 2021-09-02

Target infra

  • Mario told us that first target is Openshift - beacuse of Theia auth (Authentication supported on OpenShift only (because we require OpenShift OAuth))
  • lkrejci is now developing that using minikube
  • How should we select the target CI/infra to run the test given it should run against Openshift?
    • github actions ❌
      • ➖ We can't run any openshift there
      • ➕ github "native" way these days
      • ➕ Relatively simple development
    • Run on qe jenkins behind VPN 🤷
      • ➕ Relatively easy for us to do
      • ➕ We can use QE's OCP clusters running in PSI
      • ➖ It's behind VPN - not good for upstream
      • ➖ More workload on our self-managed infrastructure.
    • openshift-ci 🤷
      • ➕ OCP clusters "for free" without any hassle
      • ➕ Basically canonical way how to test on openshift
      • ➖ We need to migrate repos (work associated) (not 100% necessary until end of Q1 at least)

Scenario

  1. Build the project(repo)
  2. Prepare infra
    • Start or get access to running OCP cluster
    • Downolad & install chectl (next)
    • Download & install oc client
  3. Install che
    • chectl server:deploy (--workspace-engine=dev-workspace is important here)
    • wait for che to be running (for chectl command to succesfully finish)
  4. Run Factory UI test (might need to be created/modified?)
    a. Access the factory URL
    b. Wait for the workspace to be ready.
    • @sergii needs to figure out which devfile we should use.

Next meeting:

  • @sergii will try the scenario on our internal OCP4, will get more familiar with how DevWroskapce engine works (ask lkrejci how to deploy, when chectl is not working chectl with workspace-engine=dev-workspace doesn't work #18842)
  • @radim will write down steps required to be able to run this on openshift-ci
  • @radim will possibly raise this topic on Internal Call (maybe the migration in general)
    • Select which repo will be the best candidate for first implementation.

@rhopp
Copy link
Contributor

rhopp commented Feb 10, 2021

Update from today's meeting with @SkorikSergey and @dmytro-ndp:

  • We will try to use openshift-ci
  • This PR check will be probably implemented first in github.com/devfile/devworkspace-operator repo

Action items:

@SkorikSergey SkorikSergey added the status/in-progress This issue has been taken by an engineer and is under active development. label Feb 17, 2021
@SkorikSergey
Copy link
Contributor

@sleshchenko I tried to install devworkspace-operator on Openshift 4.7 from devworkspace-operator repo and created a workspace from flattened_theia-nodejs.yaml yaml. It works as expected.

But when I try to deploy Eclipse Che there is a problem with starting keycloak pod:

time="2021-02-23T06:45:15Z" level=info msg="Running exec for 'create Keycloak DB, user, privileges' in the pod 'postgres-5d89dfd896-6sqml'"
time="2021-02-23T06:45:15Z" level=error msg="Error running exec: Internal error occurred: failed calling webhook "validate-exec.devworkspace-controller.svc": Post "https://devworkspace-webhookserver.devworkspace-controller.svc:443/validate?timeout=30s\": service "devworkspace-webhookserver" not found, command: [/bin/bash -c OUT=$(psql postgres -tAc "SELECT 1 FROM pg_roles WHERE rolname='keycloak'"); if [ $OUT -eq 1 ]; then echo "DB exists"; exit 0; fi && psql -c "CREATE USER keycloak WITH PASSWORD 'PBq31Ua3B9kc'" && psql -c "CREATE DATABASE keycloak" && psql -c "GRANT ALL PRIVILEGES ON DATABASE keycloak TO keycloak" && psql -c "ALTER USER ${POSTGRESQL_USER} WITH SUPERUSER"]"
time="2021-02-23T06:45:15Z" level=error msg="Stderr: "

And only devworkspace-operator uninstalling helps. It is block us for using this Openshift 4 for other Eclipse Che deployments.

@sleshchenko
Copy link
Member

It seems that devworkspace operator is not installed properly or partially uninstalled.

@l0rd
Copy link
Contributor Author

l0rd commented Mar 15, 2021

@rhopp @SkorikSergey @dmytro-ndp what's the status of this epic? I see that a PR has been merged. Should we close this epic or should I move it to next milestone?

@SkorikSergey
Copy link
Contributor

[Selenium] Add DevWorkspaceHappyPath e2e typescript test PR added simple 'happy-path' test to check workspace created by devworkspace-controller. Next step is "testing DevWorkspace based workspaces" automation on openshift-ci.

@SkorikSergey
Copy link
Contributor

DevWorkspace happy-path test starts as PR checker in che-operator repo and nightly. Test results are on prow.ci.openshift.org.

@SkorikSergey SkorikSergey removed the status/in-progress This issue has been taken by an engineer and is under active development. label Apr 14, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/qe engine/devworkspace Issues related to Che configured to use the devworkspace controller as workspace engine. kind/enhancement A feature request - must adhere to the feature request template. kind/epic A long-lived, PM-driven feature request. Must include a checklist of items that must be completed. severity/P1 Has a major impact to usage or development of the system. sprint/current
Projects
None yet
Development

No branches or pull requests

5 participants