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

Rework che-theia remote plugin images #14797

Closed
evidolob opened this issue Oct 7, 2019 · 15 comments
Closed

Rework che-theia remote plugin images #14797

evidolob opened this issue Oct 7, 2019 · 15 comments
Assignees
Labels
area/editor/theia Issues related to the che-theia IDE of Che kind/task Internal things, technical debt, and to-do tasks to be performed. severity/P1 Has a major impact to usage or development of the system.

Comments

@evidolob
Copy link
Contributor

evidolob commented Oct 7, 2019

This is sub task of #13387

To complete #13387 we need to rewrite current, alpine based, images. And also provide new optional UBI based images for each of remote plugin. Name of the UBI based docker file will be: Dockerfile.ubi

All work on rewriting images are doing in https://github.com/eclipse/che-theia/tree/reworkImages branch

Current state:

Image name Current(Alpine) RHCC based Rewriter Req CRW 2 Req CRW 2+
eclipse/che-remote-plugin-runner-java8
eclipse/che-remote-plugin-runner-java11
eclipse/che-remote-plugin-php7 Oleksandr
eclipse/che-remote-plugin-go-1.10.7
eclipse/che-remote-plugin-go-1.11.5 (RHCC has 1.11.5)
eclipse/che-remote-plugin-go-1.12.9 Oleksandr
eclipse/che-remote-plugin-clang-8
eclipse/che-remote-plugin-python-3.7.3
eclipse/che-remote-plugin-python-3.7.4
eclipse/che-remote-plugin-dotnet-2.1.509 (RHCC has 2.1.509)
eclipse/che-remote-plugin-dotnet-2.2.105
eclipse/che-remote-plugin-kubernetes-tooling-0.1.17
eclipse/che-remote-plugin-kubernetes-tooling-1.0.0
eclipse/che-remote-plugin-kubernetes-tooling-1.0.4 ? ? ?
eclipse/che-remote-plugin-openshift-connector-0.0.17
eclipse/che-remote-plugin-openshift-connector-0.0.21
eclipse/che-remote-plugin-openshift-connector-0.1.0
eclipse/che-remote-plugin-dependency-analytics-0.0.12
eclipse/che-remote-plugin-dependency-analytics-0.0.13
eclipse/che-remote-node(new for typescript) @AndrienkoAleksandr
eclipse/che-remote-plugin-camelk-0.0.9
@evidolob evidolob added the kind/task Internal things, technical debt, and to-do tasks to be performed. label Oct 7, 2019
@evidolob
Copy link
Contributor Author

evidolob commented Oct 7, 2019

cc @l0rd , @AndrienkoAleksandr

@che-bot che-bot added the status/need-triage An issue that needs to be prioritized by the curator responsible for the triage. See https://github. label Oct 7, 2019
@evidolob evidolob removed the status/need-triage An issue that needs to be prioritized by the curator responsible for the triage. See https://github. label Oct 7, 2019
@tolusha tolusha added area/editor/theia Issues related to the che-theia IDE of Che severity/P1 Has a major impact to usage or development of the system. team/ide2 labels Oct 7, 2019
@benoitf
Copy link
Contributor

benoitf commented Oct 7, 2019

I think we can handle it differently as I've added templating for base images on top of ubi8

It'll be easy to provide other images

@benoitf
Copy link
Contributor

benoitf commented Oct 7, 2019

BTW what would be a rewrite of image eclipse/che-remote-plugin-runner-java8 while there are on Red Hat registries
openjdk/openjdk-11-rhel8 && openjdk/openjdk-8-rhel8 ?

@evidolob
Copy link
Contributor Author

evidolob commented Oct 8, 2019

I think we can use openjdk/openjdk-11-rhel8 && openjdk/openjdk-8-rhel8 directly from Red Hat registries, but we need to test them

@nickboldt
Copy link
Contributor

nickboldt commented Oct 11, 2019

@nickboldt
Copy link
Contributor

Ah, I see the WIP is in https://github.com/eclipse/che-theia/tree/reworkImages/dockerfiles/ rather than master branch.

I also see that we're not following the existing convention of using rhel.Dockerfile or Dockerfile.rhel, but have created another convention for Dockerfile.rh.

Can I suggest refactoring those to rhel.Dockerfile for two reasons?

a) consistency with other builds like the plugin/devfile registries
b) using .Dockerfile suffix means you can get linting and code completion in VSCode automatically.

@benoitf WDYT?

@evidolob
Copy link
Contributor Author

Yes we can try to use images from RHCC, at least we can make sure that they work, if they work @nickboldt you need just replace it in Che plugin registry plugin meta.yaml
For those which need to be patched we will use rhel.Dockerfile name

@evidolob
Copy link
Contributor Author

evidolob commented Oct 15, 2019

@nickboldt I try to use registry.access.redhat.com/codeready-workspaces/stacks-java-rhel8 as image for java8 vscode extension image and got error:

Activating extension Language Support for Java(TM) by Red Hat failed: EACCES: permission denied, mkdir '/home/theia/.theia/'.

Java extension doesn't work, it seems that for remote plugin we need to have /home/theia/ and permissions for remote plugin binary to write in that folder.

@tsmaeder
Copy link
Contributor

@evidolob we need a writeable location to put the plugin state. It looks like the path /home/theia is hardcoded somewhere instead of using $HOME

@evidolob
Copy link
Contributor Author

For that error Activating extension Language Support for Java(TM) by Red Hat failed: EACCES: permission denied, mkdir '/home/theia/.theia/'. it's a bug, I'm now trying to fix it, after that we will be able to use any RHCC image for remote plugin, if no new bug get out

@evidolob
Copy link
Contributor Author

@tsmaeder it's not hardcoded, remote plugin trying to use value passed from main Theia image, where /home/theia/ exist. I now fixing that.

@AndrienkoAleksandr
Copy link
Contributor

AndrienkoAleksandr commented Oct 16, 2019

@tsmaeder
Copy link
Contributor

@AndrienkoAleksandr "Access denied"

@AndrienkoAleksandr
Copy link
Contributor

@evidolob
Copy link
Contributor Author

We are done with this issue.

Note: We decided to delete rhel.Dockerfile files as some of them was based on non public images (RHCC). It is not match sense to have it it OSS project.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/editor/theia Issues related to the che-theia IDE of Che kind/task Internal things, technical debt, and to-do tasks to be performed. severity/P1 Has a major impact to usage or development of the system.
Projects
None yet
Development

No branches or pull requests

7 participants