Skip to content
This repository has been archived by the owner on Apr 4, 2023. It is now read-only.

feat(recommendations): Provide a plug-in for recommendations #916

Merged
merged 1 commit into from
Mar 2, 2021

Conversation

benoitf
Copy link
Contributor

@benoitf benoitf commented Nov 9, 2020

What does this PR do?

Provide a plug-in for recommendations

  1. Open a workspace without plug-ins: provide featured plug-ins and ask to reload workspace

  2. Open a workspace containing a devfile with plug-ins: suggest it (but not prompting restart)

  3. When opening file: Inform that some plug-ins may exist (only if extensions.openFileRecommendations is set to true in devfile)

Screenshot/screencast of this PR

What issues does this PR fix or reference?

eclipse-che/che#18274

How to test this PR?

Starts a new workspace with this plug-in and a devfile without plug-ins but with java or go project.
--> should prompt to restart workspace and then have intellisense

Try to open some files like go or python: should suggest that existing plug-ins may be there (extensions.openFileRecommendations is set to true in devfile attributes)

PR Checklist

As the author of this Pull Request I made sure that:

Reviewers

Reviewers, please comment how you tested the PR when approving it.

Happy Path Channel

HAPPY_PATH_CHANNEL=next

@che-bot

This comment has been minimized.

@che-bot

This comment has been minimized.

@benoitf
Copy link
Contributor Author

benoitf commented Jan 5, 2021

[crw-ci-test]

@che-bot
Copy link
Contributor

che-bot commented Jan 5, 2021

✅ E2E Happy path tests succeed 🎉

Try Che-Theia editor only Try Che-Theia with Java/maven example Try Che-Theia with NodeJs example

See Details

name link
che-theia docker.io/maxura/che-theia:916
che-theia-endpoint-runtime-binary docker.io/maxura/che-theia-endpoint-runtime-binary:916

Tested with Eclipse Che Single User on K8S (minikube v1.1.1)

  • Use comment "[crw-ci-test]" to rerun happy path E2E test.
  • Use comment "[crw-ci-test --rebuild]" to re-build the images and rerun happy path E2E test.

@che-bot
Copy link
Contributor

che-bot commented Jan 5, 2021

❌ E2E Happy path tests failed ❗

Try Che-Theia editor only Try Che-Theia with Java/maven example Try Che-Theia with NodeJs example

See Details

name link
che-theia docker.io/maxura/che-theia:916
che-theia-endpoint-runtime-binary docker.io/maxura/che-theia-endpoint-runtime-binary:916

Tested with Eclipse Che Single User on K8S (minikube v1.1.1)

  • Use comment "[crw-ci-test]" to rerun happy path E2E test.
  • Use comment "[crw-ci-test --rebuild]" to re-build the images and rerun happy path E2E test.

@che-bot
Copy link
Contributor

che-bot commented Jan 6, 2021

❌ E2E Happy path tests failed ❗

Try Che-Theia editor only Try Che-Theia with Java/maven example Try Che-Theia with NodeJs example

See Details

name link
che-theia docker.io/maxura/che-theia:916
che-theia-endpoint-runtime-binary docker.io/maxura/che-theia-endpoint-runtime-binary:916

Tested with Eclipse Che Single User on K8S (minikube v1.1.1)

  • Use comment "[crw-ci-test]" to rerun happy path E2E test.
  • Use comment "[crw-ci-test --rebuild]" to re-build the images and rerun happy path E2E test.

@che-bot
Copy link
Contributor

che-bot commented Jan 6, 2021

❌ E2E Happy path tests failed ❗

Try Che-Theia editor only Try Che-Theia with Java/maven example Try Che-Theia with NodeJs example

See Details

name link
che-theia docker.io/maxura/che-theia:916
che-theia-endpoint-runtime-binary docker.io/maxura/che-theia-endpoint-runtime-binary:916

Tested with Eclipse Che Single User on K8S (minikube v1.1.1)

  • Use comment "[crw-ci-test]" to rerun happy path E2E test.
  • Use comment "[crw-ci-test --rebuild]" to re-build the images and rerun happy path E2E test.

@benoitf benoitf force-pushed the CHE-18274 branch 3 times, most recently from ce05290 to ed8c086 Compare January 7, 2021 15:04
@che-bot
Copy link
Contributor

che-bot commented Jan 7, 2021

❌ E2E Happy path tests failed ❗

Try Che-Theia editor only Try Che-Theia with Java/maven example Try Che-Theia with NodeJs example

See Details

name link
che-theia docker.io/maxura/che-theia:916
che-theia-endpoint-runtime-binary docker.io/maxura/che-theia-endpoint-runtime-binary:916

Tested with Eclipse Che Single User on K8S (minikube v1.1.1)

  • Use comment "[crw-ci-test]" to rerun happy path E2E test.
  • Use comment "[crw-ci-test --rebuild]" to re-build the images and rerun happy path E2E test.

@benoitf
Copy link
Contributor Author

benoitf commented Jan 10, 2021

[crw-ci-test --rebuild]

@che-bot
Copy link
Contributor

che-bot commented Jan 10, 2021

✅ E2E Happy path tests succeed 🎉

Try Che-Theia editor only Try Che-Theia with Java/maven example Try Che-Theia with NodeJs example

See Details

name link
che-theia docker.io/maxura/che-theia:916
che-theia-endpoint-runtime-binary docker.io/maxura/che-theia-endpoint-runtime-binary:916

Tested with Eclipse Che Single User on K8S (minikube v1.1.1)

  • Use comment "[crw-ci-test]" to rerun happy path E2E test.
  • Use comment "[crw-ci-test --rebuild]" to re-build the images and rerun happy path E2E test.

@che-bot
Copy link
Contributor

che-bot commented Jan 20, 2021

✅ E2E Happy path tests succeed 🎉

Try Che-Theia editor only Try Che-Theia with Java/maven example Try Che-Theia with NodeJs example

See Details

name link
che-theia docker.io/maxura/che-theia:916
che-theia-endpoint-runtime-binary docker.io/maxura/che-theia-endpoint-runtime-binary:916

Tested with Eclipse Che Single User on K8S (minikube v1.1.1)

  • Use comment "[crw-ci-test]" to rerun happy path E2E test.
  • Use comment "[crw-ci-test --rebuild]" to re-build the images and rerun happy path E2E test.

@che-bot
Copy link
Contributor

che-bot commented Jan 20, 2021

✅ E2E Happy path tests succeed 🎉

Try Che-Theia editor only Try Che-Theia with Java/maven example Try Che-Theia with NodeJs example

See Details

name link
che-theia docker.io/maxura/che-theia:916
che-theia-endpoint-runtime-binary docker.io/maxura/che-theia-endpoint-runtime-binary:916

Tested with Eclipse Che Single User on K8S (minikube v1.1.1)

  • Use comment "[crw-ci-test]" to rerun happy path E2E test.
  • Use comment "[crw-ci-test --rebuild]" to re-build the images and rerun happy path E2E test.

@benoitf benoitf marked this pull request as ready for review January 21, 2021 09:20
@ericwill ericwill requested a review from sunix January 22, 2021 13:35
@che-bot
Copy link
Contributor

che-bot commented Mar 1, 2021

✅ E2E Happy path tests succeed 🎉

Try Che-Theia editor only Try Che-Theia with Java/maven example Try Che-Theia with NodeJs example

See Details

name link
che-theia quay.io/crw_pr/che-theia:916
che-theia-endpoint-runtime-binary quay.io/crw_pr/che-theia-endpoint-runtime-binary:916

Tested with Eclipse Che Single User on K8S (minikube v1.1.1)

  • Use comment "[crw-ci-test]" to rerun happy path E2E test.
  • Use comment "[crw-ci-test --rebuild]" to re-build the images and rerun happy path E2E test.

@benoitf benoitf force-pushed the CHE-18274 branch 2 times, most recently from e09bbf1 to fb8b787 Compare March 1, 2021 19:43
@che-bot
Copy link
Contributor

che-bot commented Mar 1, 2021

✅ E2E Happy path tests succeed 🎉

Try Che-Theia editor only Try Che-Theia with Java/maven example Try Che-Theia with NodeJs example

See Details

name link
che-theia quay.io/crw_pr/che-theia:916
che-theia-endpoint-runtime-binary quay.io/crw_pr/che-theia-endpoint-runtime-binary:916

Tested with Eclipse Che Single User on K8S (minikube v1.1.1)

  • Use comment "[crw-ci-test]" to rerun happy path E2E test.
  • Use comment "[crw-ci-test --rebuild]" to re-build the images and rerun happy path E2E test.

@benoitf benoitf force-pushed the CHE-18274 branch 2 times, most recently from b381b42 to f2bcd72 Compare March 1, 2021 21:05
@che-bot
Copy link
Contributor

che-bot commented Mar 1, 2021

✅ E2E Happy path tests succeed 🎉

Try Che-Theia editor only Try Che-Theia with Java/maven example Try Che-Theia with NodeJs example

See Details

name link
che-theia quay.io/crw_pr/che-theia:916
che-theia-endpoint-runtime-binary quay.io/crw_pr/che-theia-endpoint-runtime-binary:916

Tested with Eclipse Che Single User on K8S (minikube v1.1.1)

  • Use comment "[crw-ci-test]" to rerun happy path E2E test.
  • Use comment "[crw-ci-test --rebuild]" to re-build the images and rerun happy path E2E test.

@benoitf
Copy link
Contributor Author

benoitf commented Mar 1, 2021

[crw-ci-test --rebuild]

@benoitf
Copy link
Contributor Author

benoitf commented Mar 1, 2021

Hello, testing as a user with this devfile:
So it doesn't do anything at startup of the workspace. Then when I open a Java file, installing the recommended plugins works.

there was a dependency issue on workspace-plugin (now it's marked as explicit dependency in package.json) so some events were not triggered. and there was a glitch in featured.json file.

should be fixed now

image

For the installation of recommended plugins when opening the java file (Could be done in another iteration):
would be nice to tell the user to restart the workspace

Should be implemented now

would be nice to show a list (not json content) of plugins to install

I think it's a comma separated list of pluginId ?
I agree it's not the best and UX team has been involved few weeks ago to provide enhancements (for all user interactions) and will provide feedback

would be nice to be able to choose the recommended plugins to install (at the moment, install java8 and java11 and quarkus11, etc ....) or install only one!

I tried but I faced eclipse-theia/theia#5673 (Theia is not handling the canPickMany option in QuickPick)

@che-bot
Copy link
Contributor

che-bot commented Mar 1, 2021

✅ E2E Happy path tests succeed 🎉

Try Che-Theia editor only Try Che-Theia with Java/maven example Try Che-Theia with NodeJs example

See Details

name link
che-theia quay.io/crw_pr/che-theia:916
che-theia-endpoint-runtime-binary quay.io/crw_pr/che-theia-endpoint-runtime-binary:916

Tested with Eclipse Che Single User on K8S (minikube v1.1.1)

  • Use comment "[crw-ci-test]" to rerun happy path E2E test.
  • Use comment "[crw-ci-test --rebuild]" to re-build the images and rerun happy path E2E test.

@che-bot
Copy link
Contributor

che-bot commented Mar 1, 2021

✅ E2E Happy path tests succeed 🎉

Try Che-Theia editor only Try Che-Theia with Java/maven example Try Che-Theia with NodeJs example

See Details

name link
che-theia quay.io/crw_pr/che-theia:916
che-theia-endpoint-runtime-binary quay.io/crw_pr/che-theia-endpoint-runtime-binary:916

Tested with Eclipse Che Single User on K8S (minikube v1.1.1)

  • Use comment "[crw-ci-test]" to rerun happy path E2E test.
  • Use comment "[crw-ci-test --rebuild]" to re-build the images and rerun happy path E2E test.

@che-bot
Copy link
Contributor

che-bot commented Mar 2, 2021

❌ E2E Happy path tests failed ❗

Try Che-Theia editor only Try Che-Theia with Java/maven example Try Che-Theia with NodeJs example

See Details

name link
che-theia quay.io/crw_pr/che-theia:916
che-theia-endpoint-runtime-binary quay.io/crw_pr/che-theia-endpoint-runtime-binary:916

Tested with Eclipse Che Single User on K8S (minikube v1.1.1)

  • Use comment "[crw-ci-test]" to rerun happy path E2E test.
  • Use comment "[crw-ci-test --rebuild]" to re-build the images and rerun happy path E2E test.

@benoitf benoitf force-pushed the CHE-18274 branch 2 times, most recently from 75eaa4b to b1450b2 Compare March 2, 2021 10:11
@che-bot
Copy link
Contributor

che-bot commented Mar 2, 2021

✅ E2E Happy path tests succeed 🎉

Try Che-Theia editor only Try Che-Theia with Java/maven example Try Che-Theia with NodeJs example

See Details

name link
che-theia quay.io/crw_pr/che-theia:916
che-theia-endpoint-runtime-binary quay.io/crw_pr/che-theia-endpoint-runtime-binary:916

Tested with Eclipse Che Single User on K8S (minikube v1.1.1)

  • Use comment "[crw-ci-test]" to rerun happy path E2E test.
  • Use comment "[crw-ci-test --rebuild]" to re-build the images and rerun happy path E2E test.

Devfile without plug-ins: provide featured plug-ins and ask to reload workspace
With plug-ins: suggest it
When opening file: Inform that some plug-ins may exist

Change-Id: I5d35f5329f44504e4e6fcad3ba198aa932d50252
Signed-off-by: Florent Benoit <[email protected]>
@che-bot
Copy link
Contributor

che-bot commented Mar 2, 2021

✅ E2E Happy path tests succeed 🎉

Try Che-Theia editor only Try Che-Theia with Java/maven example Try Che-Theia with NodeJs example

See Details

name link
che-theia quay.io/crw_pr/che-theia:916
che-theia-endpoint-runtime-binary quay.io/crw_pr/che-theia-endpoint-runtime-binary:916

Tested with Eclipse Che Single User on K8S (minikube v1.1.1)

  • Use comment "[crw-ci-test]" to rerun happy path E2E test.
  • Use comment "[crw-ci-test --rebuild]" to re-build the images and rerun happy path E2E test.

@sunix
Copy link
Contributor

sunix commented Mar 2, 2021

Last changes:

  • Fix problem no startup recommendation when starting a devfile with just a java project and the che-theia editor.
  • We agree to Florent to disable the recommendation when a file is open. It is installing all the plugins related to Java (java11, java8, quarkus8, quarkus11, camel, etc.) but the user would just want to select one or two, but not all. And we cannot check the plugins to install because of this issue: [vscode] window.showQuickPick canPickMany is not supported eclipse-theia/theia#5673. There is a preference option to enabling it.
  • small code refactor

@sunix sunix self-requested a review March 2, 2021 13:04
Copy link
Contributor

@sunix sunix left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@sunix
Copy link
Contributor

sunix commented Mar 2, 2021

Restart is not working but covered with eclipse-che/che#19174

@ericwill
Copy link
Contributor

ericwill commented Mar 2, 2021

@tsmaeder any comments left from your side? Otherwise it's good to merge IMO

@tsmaeder
Copy link
Contributor

tsmaeder commented Mar 2, 2021

Nope, all good.

@benoitf benoitf merged commit 84fa2c9 into eclipse-che:master Mar 2, 2021
@benoitf benoitf deleted the CHE-18274 branch March 2, 2021 15:05
@che-bot che-bot added this to the 7.27 milestone Mar 2, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants