-
Notifications
You must be signed in to change notification settings - Fork 114
Patch all used images for arbitrary users on OpenShift #38
Conversation
- Patch all currently used images for arbitrary user support - Move $HOME and $PS1 definition into arbitrary user patch to simplify devfiles and make UX more consistent - Add additional fixes to patched images: - Set chmod g=u on /home to allow write access - Create home directory if it does not exist Signed-off-by: Angel Misevski <[email protected]>
So this entrypoint will override entrypoints of all images... Isn't there a chance that this would break some functionality of the images? Also, if user would like to introduce his own image (for workspace/plugin), he will be required to do this? |
@rhopp There is a chance, but in general we specify Regarding the second question, could you clarify what you mean? For adding an image to this registry a user could either a line to the E.g. if I want to add a devfile and have an image that has its own workarounds for openshift, I can simply add that devfile to the registry. |
arbitrary-users-patch/base_images
Outdated
@@ -1 +1,10 @@ | |||
java11-maven maven:3.6.0-jdk-11 | |||
che7-python-3.6 centos/python-36-centos7:1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why che7-*
and not just che-*
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's mostly a holdover from when I intended these changes to go in the che-dockerfiles
repo; I'll switch to plain che-
.
Signed-off-by: Angel Misevski <[email protected]>
My second question is mostly about any required manual steps required for creating devfiles with own images to be able to run on openshift. (customers of CRW will use their own images and any manual steps needs to be properly documented in the product and can introduce possible problems for customers & cases for our support :-D). But I guess there is no way around this... |
@rhopp Regarding the future path, once Che 7 is stable and release I have a few threads to pull on to figure out a more general solution. I believe our overall goal is that users should not have to patch images to run Che workspaces. |
I've done a reasonably thorough test of all our current devfiles (using
Apart from that I have tested our current devfiles and they all work fairly well. @l0rd WDYT? |
Nice report!
We should create
I think it's perfectly fine for now. And much better than the
What's the benefit (apart the consistency)?
Why is that?
👍 |
Ok I'll do that; I need to patch + add a few images that were added while the original PR was open anyways.
The issue originally was that
Alpine does not ship with |
For nodejs-alpine I think we should just use another image like |
* Patch all used images for arbitrary users on OpenShift - Patch all currently used images for arbitrary user support - Move $HOME and $PS1 definition into arbitrary user patch to simplify devfiles and make UX more consistent - Add additional fixes to patched images: - Set chmod g=u on /home to allow write access - Create home directory if it does not exist Signed-off-by: Angel Misevski <[email protected]>
What does this PR do?
$HOME
and$PS1
) into the template Dockerfile to simplify devfiles and make the experience more consistentIssues still in this PR:
$PS1
can be inconsistent;~/.bashrc
is only modified if not present. Forgradle:5.2.1-jdk11
andregistry.centos.org/che-stacks/centos-nodejs
, a~/.bashrc
is already present so those images show their default prompt (e.g.user@workspacetouo0g204wgupgjm:/projects$
)~/.bashrc
instead of rewriting only when empty, but may cause issues if${HOME}
is persisted laternode:10.16-alpine
, which does not includebash
. This devfile is left unmodified. To support this devfile we would either need tonode:10.16-jessie
is 685MB, but shares layers with other images used here), orTesting
A build of the devfile registry that refers to the patched images (in my dockerhub repo) is available at http://che-devfile-registry-eclipse-che.devtools-dev.ext.devshift.net/ so you should be able to try it out by setting the appropriate env var in your Che deployment (
CHE_WORKSPACE_DEVFILE__REGISTRY__URL
)What issues does this PR fix or reference?
eclipse-che/che#13837, eclipse-che/che#13454, redhat-developer/rh-che#1455