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

Support telemetry for Red Hat VS Code extensions in Eclipse Che #19361

Closed
ericwill opened this issue Mar 22, 2021 · 16 comments
Closed

Support telemetry for Red Hat VS Code extensions in Eclipse Che #19361

ericwill opened this issue Mar 22, 2021 · 16 comments
Assignees
Labels
area/plugin-registry area/plugins kind/task Internal things, technical debt, and to-do tasks to be performed. lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale.

Comments

@ericwill
Copy link
Contributor

Is your task related to a problem? Please describe.

In order to enable telemetry support in Che, we need to add the vscode-commons vsix to all Che plugins in the plugin registry.

Describe the solution you'd like

Since all plugins in the registry should have this vsix in their extensions list, it's something we can add at build time. Perhaps something like:

  • Create a defaultExtensions.json in the root of the plugin registry. This file will contain a list of vsix files that should be present in all Che plugin registry entries
  • Modify the che-plugin-registry build process to automatically append any vsix listed in defaultExtensions.json to the extensions field of every generated meta.yaml file

Describe alternatives you've considered

Manual addition of the vscode-commons vsix file to all Che plugin entries in che-theia-plugins.yaml

Additional context

@ericwill ericwill added kind/task Internal things, technical debt, and to-do tasks to be performed. area/plugin-registry area/plugins labels Mar 22, 2021
@ericwill ericwill added this to the 7.29 milestone Mar 22, 2021
@ericwill ericwill mentioned this issue Mar 22, 2021
46 tasks
@ericwill
Copy link
Contributor Author

@fbricon is the expectation that the vscode-commons plugin will work if there are multiple instances of it running in the same workspace? If so we could just naively add it to every supported plugin entry. However if it's a problem, then we'll have to figure out a way so that there is only ever one running instance of the plugin in any given workspace.

@ericwill ericwill changed the title Add vscode-commons vsix to all plugins in the registry Enable telemetry support in the che-plugin-registry Mar 24, 2021
@tsmaeder
Copy link
Contributor

Is there anything special in the commons extensions that would prevent us from just running it as a built-in extension in the theia back-end? Extensions API can be invoked remotely.

@fbricon
Copy link

fbricon commented Mar 25, 2021

I believe not a single VS Code extension out there is expected to work properly when multiple instances are running concurrently. I don't even know how it'll behave or how we'd mitigate issues.

Having a single extension across the whole installation is definitely the safest

@ericwill
Copy link
Contributor Author

I believe not a single VS Code extension out there is expected to work properly when multiple instances are running concurrently. I don't even know how it'll behave or how we'd mitigate issues.

Having a single extension across the whole installation is definitely the safest

Do you know if there are any concerns about it not running in the same container as an extension? Otherwise we can enable this trivially by making it a che-theia built-in, as Thomas has suggested.

@ericwill ericwill removed this from the 7.29 milestone Apr 6, 2021
@ericwill ericwill mentioned this issue Apr 8, 2021
42 tasks
@ericwill ericwill changed the title Enable telemetry support in the che-plugin-registry Enable telemetry support in Eclipse Che Apr 14, 2021
@ericwill ericwill added this to the 7.30 milestone Apr 14, 2021
@benoitf
Copy link
Contributor

benoitf commented Apr 15, 2021

AFAIK It can't be part of che-theia built-in for Che, it's not a mandatory extension at all just a Red Hat specific extension (built-in plug-in is what is default on VS Code), .

@ericwill
Copy link
Contributor Author

AFAIK It can't be part of che-theia built-in for Che, it's not a mandatory extension at all just a Red Hat specific extension (built-in plug-in is what is default on VS Code), .

Do you have an alternative proposal? New Red Hat plugins (like vscode-xml) are failing to launch if vscode-commons is not installed. Soon this will be the case for all Red Hat plugins. Do we have some way to detect that a workspace has plugins with publisher: redhat and install it workspace start?

@tsmaeder
Copy link
Contributor

@benoitf good point: requiring red hat stuff for an Eclipse project is bad form. What's the state of inter-che-plugin dependencies these days?

@ericwill
Copy link
Contributor Author

I don't mind investigating alternatives, but I also don't object to adding it as a built-in if there are no possible alternatives. Not having this plugin installed is blocking us from upgrading other extensions.

@sympatheticmoose
Copy link

For what its worth, it seems that installing vscode-commons by itself doesn't really do anything as far as a user is concerned. It is only activated by the extensions which depend on it.

benoitf added a commit to benoitf/che-plugin-registry that referenced this issue Apr 28, 2021
related to eclipse-che/che#19361

Change-Id: I068a10c6f0b006948fcacd2fd92750a5ef586be7
Signed-off-by: Florent Benoit <[email protected]>
ericwill added a commit to eclipse-che/che-plugin-registry that referenced this issue Apr 29, 2021
* feat(redhat.commons): Add VS Code commons extension
related to eclipse-che/che#19361

Change-Id: I068a10c6f0b006948fcacd2fd92750a5ef586be7
Signed-off-by: Florent Benoit <[email protected]>

* Update vsix link to built-from-sources version

Signed-off-by: Eric Williams <[email protected]>

Co-authored-by: Eric Williams <[email protected]>
benoitf added a commit to benoitf/che that referenced this issue Apr 30, 2021
…dle new extensions requiring this one

And only one instance of vscode-commons can run at once
related to eclipse-che#19361

Change-Id: I69154dd97b837214c04fdd3e9e42d89a03c542d3
Signed-off-by: Florent Benoit <[email protected]>
benoitf added a commit that referenced this issue Apr 30, 2021
…dle new extensions requiring this one

And only one instance of vscode-commons can run at once
related to #19361

Change-Id: I69154dd97b837214c04fdd3e9e42d89a03c542d3
Signed-off-by: Florent Benoit <[email protected]>
@l0rd l0rd added the new&noteworthy For new and/or noteworthy issues that deserve a blog post, new docs, or emphasis in release notes label May 4, 2021
@l0rd l0rd changed the title Enable telemetry support in Eclipse Che Support telemetry for Red Hat VS Code extensions in Eclipse Che May 4, 2021
@l0rd
Copy link
Contributor

l0rd commented May 4, 2021

@ericwill closing because the PR has been merged. Feel free to reopen if needed.

@l0rd l0rd closed this as completed May 4, 2021
@vinokurig
Copy link
Contributor

I've tried to start the lates openshift-connector plugin:

apiVersion: 1.0.0
metadata:
  name: wksp-ezioz
components:
  - type: chePlugin
    reference: 'https://gist.github.com/vinokurig/b1eb70baca6ddf96025743cbe0444f88/raw/a0d89a96c25cb1a534963ec93f94717b0e2e8317/plugin-meta.yaml'

and it fails because of the redhat.vscode-commons plugin:
screenshot-che-eclipse-che 192 168 99 118 nip io-2021 05 24-09_09_38

@vinokurig
Copy link
Contributor

@benoitf could you please check it?

@themr0c
Copy link
Contributor

themr0c commented Jun 2, 2021

Release notes: https://issues.redhat.com/browse/CRW-1818

@ericwill
Copy link
Contributor Author

ericwill commented Jul 5, 2021

I suppose we should wait until the vscode-commons extension is removed. The other option is that we include the vscode-commons extension in the openshift-connector plugin definition. @benoitf WDYT?

@benoitf
Copy link
Contributor

benoitf commented Jul 6, 2021

Openshift connector has removed the dependency to vscode-commons
redhat-developer/vscode-openshift-tools@f22a6d3
but it has not yet released a new version but I would say it'll be done pretty soon.

I think that if we include commons extension in the openshift connector, it will collide with the plugin added by default by che-server (so should be removed first)

@l0rd l0rd removed the new&noteworthy For new and/or noteworthy issues that deserve a blog post, new docs, or emphasis in release notes label Sep 28, 2021
@che-bot
Copy link
Contributor

che-bot commented Mar 27, 2022

Issues go stale after 180 days of inactivity. lifecycle/stale issues rot after an additional 7 days of inactivity and eventually close.

Mark the issue as fresh with /remove-lifecycle stale in a new comment.

If this issue is safe to close now please do so.

Moderators: Add lifecycle/frozen label to avoid stale mode.

@che-bot che-bot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Mar 27, 2022
@che-bot che-bot closed this as completed Apr 3, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/plugin-registry area/plugins kind/task Internal things, technical debt, and to-do tasks to be performed. lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

9 participants