[jbosstools-issues] [JBoss JIRA] (JBIDE-25700) Hot deploy of Spring Boot on OpenShift is not working with OpenShift Online

Andre Dietisheim (JIRA) issues at jboss.org
Tue Feb 27 10:07:01 EST 2018


    [ https://issues.jboss.org/browse/JBIDE-25700?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13538934#comment-13538934 ] 

Andre Dietisheim edited comment on JBIDE-25700 at 2/27/18 10:06 AM:
--------------------------------------------------------------------

[~aurelien.pupier] just tried with the wildfly sample that's available on https://console.starter-us-east-1.openshift.com and it works fine. 
Files are owned by default/root but files created by oc rsync are owned by an unknown user beloging to the root group
{code}
drwxrwxr-x. 3 default    root 4096 Feb 27 14:12 configuration
drwxr-xr-x. 6 1113880000 root   84 Feb 27 14:12 data
drwxrwxr-x. 3 default    root   81 Feb 27 14:28 deployments
drwxrwxr-x. 3 default    root   17 Jan 29  2016 lib
drwxr-xr-x. 2 1113880000 root   24 Feb 27 14:11 log
drwxrwxr-x. 5 default    root   67 Feb 27 14:12 tmp
{code}
There are no permission issues though, I can freely create new files in the deployments directory:
{code}
oc rsh <pod>
{code}
{code}
sh-4.2$ pwd
/wildfly/standalone/deployments
sh-4.2$ touch test
sh-4.2$ ls -l
total 16
-rw-rw-r--. 1 default    root 8870 Jan 29  2016 README.txt
drwxr-xr-x. 5 1113880000 root   86 Feb 27 14:12 ROOT.war
-rw-r--r--. 1 1113880000 root    8 Feb 27 14:12 ROOT.war.deployed
-rw-r--r--. 1 1113880000 root    0 Feb 27 15:00 test
sh-4.2$
{code}

When trying the same thing with a pod for the fuse-on-openshift example (that I initially deploy via the fabric8 maven plugin, using the *fabric8/s2i-java* base image), I hit a permission error (*touch: cannot touch 'test.txt': Permission denied*):
{code}
sh-4.2$ pwd
/deployments/BOOT-INF/classes
sh-4.2$ touch test.txt
touch: cannot touch 'test.txt': Permission denied
sh-4.2$ ls -l
total 8
-rw-r--r--. 1 jboss root 547 Feb 27 14:41 application.properties
-rw-r--r--. 1 jboss root 468 Feb 27 14:41 logback.xml
drwxr-xr-x. 3 jboss root  23 Feb 27 14:41 org
drwxr-xr-x. 2 jboss root  31 Feb 27 14:41 spring
{code}


was (Author: adietish):
[~aurelien.pupier] just tried with the wildfly sample that's available on https://console.starter-us-east-1.openshift.com and it works fine. 
Files are owned by default/root but files created by oc rsync are owned by an unknown user beloging to the root group
{code}
drwxrwxr-x. 3 default    root 4096 Feb 27 14:12 configuration
drwxr-xr-x. 6 1113880000 root   84 Feb 27 14:12 data
drwxrwxr-x. 3 default    root   81 Feb 27 14:28 deployments
drwxrwxr-x. 3 default    root   17 Jan 29  2016 lib
drwxr-xr-x. 2 1113880000 root   24 Feb 27 14:11 log
drwxrwxr-x. 5 default    root   67 Feb 27 14:12 tmp
{code}
There are not permission issue though. I can get into the pod
{code}
oc rsh <pod>
{code}
and create a new file via touch
{code}
/wildfly/standalone/deployments
sh-4.2$ touch test
sh-4.2$ ls -l
total 16
-rw-rw-r--. 1 default    root 8870 Jan 29  2016 README.txt
drwxr-xr-x. 5 1113880000 root   86 Feb 27 14:12 ROOT.war
-rw-r--r--. 1 1113880000 root    8 Feb 27 14:12 ROOT.war.deployed
-rw-r--r--. 1 1113880000 root    0 Feb 27 15:00 test
sh-4.2$
{code}

When trying the same thing with a pod for the fuse-on-openshift example (that I initially deploy via the fabric8 maven plugin, using the *fabric8/s2i-java* base image), I hit a permission error (*touch: cannot touch 'test.txt': Permission denied*):
{code}
sh-4.2$ pwd
/deployments/BOOT-INF/classes
sh-4.2$ touch test.txt
touch: cannot touch 'test.txt': Permission denied
sh-4.2$ ls -l
total 8
-rw-r--r--. 1 jboss root 547 Feb 27 14:41 application.properties
-rw-r--r--. 1 jboss root 468 Feb 27 14:41 logback.xml
drwxr-xr-x. 3 jboss root  23 Feb 27 14:41 org
drwxr-xr-x. 2 jboss root  31 Feb 27 14:41 spring
{code}

> Hot deploy of Spring Boot on OpenShift is not working with OpenShift Online
> ---------------------------------------------------------------------------
>
>                 Key: JBIDE-25700
>                 URL: https://issues.jboss.org/browse/JBIDE-25700
>             Project: Tools (JBoss Tools)
>          Issue Type: Bug
>          Components: openshift
>    Affects Versions: 4.5.2.Final
>            Reporter: Aurélien Pupier
>            Assignee: Andre Dietisheim
>            Priority: Critical
>              Labels: online, springboot
>             Fix For: 4.5.3.AM2
>
>
> neither with open.paas.redhat.com
> so only when using the CDK.
> it seems to be due to the fact that the user in the pod are not the same.
> Jeff said:
> {quote}
> For SpringBoot deployments, the application file is called a fat jar and it placed in the /deployments folder (images are upstream fabric8/s2i-java or imagestream redhat-openjdk18-openshift). In order to get live update the file is then unzipped to the /deployments folder leaded to new sub folders BOOT-INF and META-INF
> The user permissions on those folders are the following:
> /deployments: writable by user jboss and group root
> /deployments/BOOT-INF: writable by user jboss readable only by group root
> /deployments/META-INF: writable by user jboss readable only by group root
> The rsync process with create some sub folders under /deployments/BOOT-INF. The problem that we have is that the user that is assigned for the rsync operation (or when you open a terminal in the OpenShift console) is not jboss (as opposed to Minishift/CDK) and thus we have permissions errors during the rsync operation.
> {quote}



--
This message was sent by Atlassian JIRA
(v7.5.0#75005)



More information about the jbosstools-issues mailing list