Bug 1002065 - ER2 build clone repo (local and remote github URI) result in empty repository
Summary: ER2 build clone repo (local and remote github URI) result in empty repository
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: JBoss BPMS Platform 6
Classification: Retired
Component: Business Central
Version: 6.0.0
Hardware: x86_64
OS: Mac OS
unspecified
urgent
Target Milestone: ER4
: 6.0.0
Assignee: Alexandre Porcelli
QA Contact: Petr Široký
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-08-28 12:31 UTC by Eric D. Schabell
Modified: 2014-08-06 20:12 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-08-06 20:12:29 UTC
Type: Bug


Attachments (Terms of Use)
Empty repo clone results (95.69 KB, image/png)
2013-08-28 12:31 UTC, Eric D. Schabell
no flags Details
git clone screen (34.11 KB, image/png)
2013-08-28 12:39 UTC, Eric D. Schabell
no flags Details

Description Eric D. Schabell 2013-08-28 12:31:28 UTC
Created attachment 791375 [details]
Empty repo clone results

Description of problem:
Via Authoring -> Administration, cloning a repository with file system (file:///User/erics/somerepo) or github repo (https://github.com/eschabell/brms-customer-evaluation-demo.git) provides pop-up with clone successful but repo is empty of all assets. Nothing is cloned.

Fields filled when creating;
Repository Name (customerdemo), Group (nothing, unable to add an entry to this so leave on default), Git URL (see above, used local file system and github url), User Name (erics, eap user created), Password (eap password created)

Version-Release number of selected component (if applicable):
ER2

How reproducible:
See above.

Steps to Reproduce:
1.
2.
3.

Actual results:
Attaching screenshots of the resulting empty repos (3x tries)

Expected results:


Additional info: (Log messages)
14:21:14,322 ERROR [stderr] (Thread-115) Exception in thread "Thread-115" org.kie.commons.java.nio.file.NoSuchFileException
14:21:14,323 ERROR [stderr] (Thread-115) 	at org.kie.commons.java.nio.fs.jgit.JGitFileSystemProvider.readAttributes(JGitFileSystemProvider.java:1270)
14:21:14,323 ERROR [stderr] (Thread-115) 	at org.kie.commons.java.nio.file.Files.readAttributes(Files.java:572)
14:21:14,323 ERROR [stderr] (Thread-115) 	at org.kie.commons.java.nio.file.FileTreeWalker.walk(FileTreeWalker.java:52)
14:21:14,323 ERROR [stderr] (Thread-115) 	at org.kie.commons.java.nio.file.FileTreeWalker.walk(FileTreeWalker.java:85)
14:21:14,324 ERROR [stderr] (Thread-115) 	at org.kie.commons.java.nio.file.FileTreeWalker.walk(FileTreeWalker.java:44)
14:21:14,324 ERROR [stderr] (Thread-115) 	at org.kie.commons.java.nio.file.Files.walkFileTree(Files.java:909)
14:21:14,324 ERROR [stderr] (Thread-115) 	at org.kie.commons.java.nio.file.Files.walkFileTree(Files.java:928)
14:21:14,324 ERROR [stderr] (Thread-115) 	at org.kie.kieora.io.BatchIndex.run(BatchIndex.java:71)
14:21:14,324 ERROR [stderr] (Thread-115) 	at org.kie.kieora.io.BatchIndex$1.run(BatchIndex.java:55)
14:21:14,338 ERROR [stderr] (Thread-116) Exception in thread "Thread-116" org.kie.commons.java.nio.file.NoSuchFileException
14:21:14,338 ERROR [stderr] (Thread-116) 	at org.kie.commons.java.nio.fs.jgit.JGitFileSystemProvider.readAttributes(JGitFileSystemProvider.java:1270)
14:21:14,339 ERROR [stderr] (Thread-116) 	at org.kie.commons.java.nio.file.Files.readAttributes(Files.java:572)
14:21:14,339 ERROR [stderr] (Thread-116) 	at org.kie.commons.java.nio.file.FileTreeWalker.walk(FileTreeWalker.java:52)
14:21:14,339 ERROR [stderr] (Thread-116) 	at org.kie.commons.java.nio.file.FileTreeWalker.walk(FileTreeWalker.java:85)
14:21:14,340 ERROR [stderr] (Thread-116) 	at org.kie.commons.java.nio.file.FileTreeWalker.walk(FileTreeWalker.java:44)
14:21:14,340 ERROR [stderr] (Thread-116) 	at org.kie.commons.java.nio.file.Files.walkFileTree(Files.java:909)
14:21:14,340 ERROR [stderr] (Thread-116) 	at org.kie.commons.java.nio.file.Files.walkFileTree(Files.java:928)
14:21:14,340 ERROR [stderr] (Thread-116) 	at org.kie.kieora.io.BatchIndex.run(BatchIndex.java:71)
14:21:14,340 ERROR [stderr] (Thread-116) 	at org.kie.kieora.io.BatchIndex$1.run(BatchIndex.java:55)
14:21:17,378 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) org.jboss.errai.bus.client.api.base.MessageDeliveryFailure: error invoking endpoint
14:21:17,378 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.jboss.errai.bus.server.io.ConversationalEndpointCallback.callback(ConversationalEndpointCallback.java:132)
14:21:17,378 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.jboss.errai.bus.server.io.RemoteServiceCallback.callback(RemoteServiceCallback.java:54)
14:21:17,378 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.jboss.errai.cdi.server.CDIExtensionPoints$3.callback(CDIExtensionPoints.java:512)
14:21:17,378 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.jboss.errai.bus.client.framework.DeliveryPlan.deliver(DeliveryPlan.java:43)
14:21:17,379 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.jboss.errai.bus.server.ServerMessageBusImpl.sendGlobal(ServerMessageBusImpl.java:632)
14:21:17,379 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.jboss.errai.bus.server.SimpleDispatcher.dispatchGlobal(SimpleDispatcher.java:46)
14:21:17,379 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.jboss.errai.bus.server.service.ErraiServiceImpl.store(ErraiServiceImpl.java:93)
14:21:17,379 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.jboss.errai.bus.server.service.ErraiServiceImpl.store(ErraiServiceImpl.java:107)
14:21:17,379 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.jboss.errai.bus.server.servlet.DefaultBlockingServlet.doPost(DefaultBlockingServlet.java:117)
14:21:17,379 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
14:21:17,379 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
14:21:17,379 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:295)
14:21:17,380 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
14:21:17,380 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.jboss.solder.servlet.exception.CatchExceptionFilter.doFilter(CatchExceptionFilter.java:65)
14:21:17,380 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)
14:21:17,380 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
14:21:17,380 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.jboss.solder.servlet.event.ServletEventBridgeFilter.doFilter(ServletEventBridgeFilter.java:74)
14:21:17,380 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)
14:21:17,380 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
14:21:17,380 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.jbpm.designer.web.filter.impl.PluggableFilter.doFilter(PluggableFilter.java:70)
14:21:17,380 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)
14:21:17,381 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
14:21:17,381 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.uberfire.security.server.UberFireSecurityFilter.doFilter(UberFireSecurityFilter.java:254)
14:21:17,381 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)
14:21:17,381 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
14:21:17,381 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
14:21:17,381 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:149)
14:21:17,381 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:481)
14:21:17,381 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.jboss.as.jpa.interceptor.WebNonTxEmCloserValve.invoke(WebNonTxEmCloserValve.java:50)
14:21:17,381 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.jboss.as.jpa.interceptor.WebNonTxEmCloserValve.invoke(WebNonTxEmCloserValve.java:50)
14:21:17,381 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:169)
14:21:17,382 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:145)
14:21:17,382 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:97)
14:21:17,382 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:102)
14:21:17,382 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:336)
14:21:17,382 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
14:21:17,382 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:653)
14:21:17,382 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:920)
14:21:17,383 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at java.lang.Thread.run(Thread.java:722)
14:21:17,383 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) Caused by: org.kie.commons.java.nio.file.NoSuchFileException
14:21:17,383 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.kie.commons.java.nio.file.Files.readAttributes(Files.java:590)
14:21:17,383 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.kie.commons.io.impl.IOServiceDotFileImpl.readAttributes(IOServiceDotFileImpl.java:193)
14:21:17,384 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.uberfire.backend.server.util.Paths.convert(Paths.java:54)
14:21:17,384 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.uberfire.backend.server.util.Paths.convert(Paths.java:84)
14:21:17,384 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.uberfire.backend.server.util.Paths$Proxy$_$$_WeldClientProxy.convert(Paths$Proxy$_$$_WeldClientProxy.java)
14:21:17,384 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.uberfire.backend.server.VFSServicesServerImpl.newDirectoryStream(VFSServicesServerImpl.java:160)
14:21:17,384 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.uberfire.backend.server.VFSServicesServerImpl.newDirectoryStream(VFSServicesServerImpl.java:67)
14:21:17,384 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.uberfire.backend.server.VFSServicesServerImpl$Proxy$_$$_WeldClientProxy.newDirectoryStream(VFSServicesServerImpl$Proxy$_$$_WeldClientProxy.java)
14:21:17,385 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at sun.reflect.GeneratedMethodAccessor177.invoke(Unknown Source)
14:21:17,385 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
14:21:17,385 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at java.lang.reflect.Method.invoke(Method.java:601)
14:21:17,385 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	at org.jboss.errai.bus.server.io.ConversationalEndpointCallback.callback(ConversationalEndpointCallback.java:114)
14:21:17,385 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) 	... 38 more
14:21:17,385 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) *** Message delivery failure ***
14:21:17,385 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) Bus: org.jboss.errai.bus.server.ServerMessageBusImpl@51a9a56b
14:21:17,385 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) Message: CommandType=newDirectoryStream:org.uberfire.backend.vfs.Path:, ErrorTo=org.uberfire.backend.vfs.VFSService:RPC.newDirectoryStream:org.uberfire.backend.vfs.Path::Errors:18, ReplyTo=org.uberfire.backend.vfs.VFSService:RPC.newDirectoryStream:org.uberfire.backend.vfs.Path::RespondTo:18, ToSubject=org.uberfire.backend.vfs.VFSService:RPC, MethodParms=[PathImpl{uri='default://eap_6_1@test3/', fileName='/', attrs={lastModifiedTime=Mon Apr 29 10:19:56 CEST 2013, isDirectory=true, isRegularFile=false, creationTime=Thu Jun 07 12:50:17 CEST 2012, size=-1}}]
14:21:17,386 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) errorMessage: Error calling remote service: org.uberfire.backend.vfs.VFSService:RPC
14:21:17,386 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) exception: org.jboss.errai.bus.client.api.base.MessageDeliveryFailure: error invoking endpoint
14:21:17,386 ERROR [stderr] (http-localhost/127.0.0.1:8080-2) disconnect: false

Comment 1 Eric D. Schabell 2013-08-28 12:35:37 UTC
The underlying filesystem looks like this for the git repo, so something is getting cloned:

$ pwd
/Users/erics/Downloads/bpms/jboss-eap-6.1-ER2/bin/.niogit

$ ll
total 0
drwxr-xr-x  10 erics  erics   340B Aug 28 13:39 CustomerEvaluation.git
drwxr-xr-x   9 erics  erics   306B Aug 28 13:37 Repository1.git
drwxr-xr-x  10 erics  erics   340B Aug 28 14:17 customerdemo.git
drwxr-xr-x   9 erics  erics   306B Aug 28 13:07 system.git
drwxr-xr-x  10 erics  erics   340B Aug 28 14:21 test3.git

$ ll test3.git/
total 24
-rw-r--r--  1 erics  erics   797B Aug 28 14:21 FETCH_HEAD
-rw-r--r--  1 erics  erics    23B Aug 28 14:21 HEAD
drwxr-xr-x  2 erics  erics    68B Aug 28 14:21 branches
-rw-r--r--  1 erics  erics   294B Aug 28 14:21 config
drwxr-xr-x  2 erics  erics    68B Aug 28 14:21 hooks
drwxr-xr-x  3 erics  erics   102B Aug 28 14:21 logs
drwxr-xr-x  4 erics  erics   136B Aug 28 14:21 objects
drwxr-xr-x  5 erics  erics   170B Aug 28 14:21 refs

Comment 2 Eric D. Schabell 2013-08-28 12:39:37 UTC
Created attachment 791379 [details]
git clone screen

Shot of clone attempt that results in empty repo.

Comment 3 Eric D. Schabell 2013-08-28 18:09:06 UTC
Just to let you know, researched with core dev (maciej) from jBPM, he confirmed the problem.

Comment 4 Petr Široký 2013-08-28 20:04:23 UTC
Yes, I can confirm too. Eric's repo gets cloned - its on filesystem, but for some reason it can't accessed from the web UI. 

Note: I tried also with several other repos, but all of them were cloned successfully.

Comment 5 Petr Široký 2013-08-29 17:26:28 UTC
I was playing with the mentioned repo a bit and found out that after removing the top-level files (init.sh, README.md, *.pdf and *.odf) the repo is successfully cloned and content can be viewed using the File Explorer (exception is still thrown though). However I have no idea why is this needed as I could not reproduce it with any other repository.

Comment 6 Petr Široký 2013-08-29 17:34:36 UTC
One more update - I believe the root cause is that the files in top-level dir have X (execute) permission set, after running chmod -x on them and committing the changes, the repo is successfully cloned.

Comment 7 Petr Široký 2013-08-30 08:50:20 UTC
I wasn't clear in my previous message: I think this is a bug. All repos should be correctly cloned - no matter what the content is (or permissions of files are). The File Explorer should be able to show the files all the times. However the Project Explorer probably expects some directory structure so it that is not followed the assets won't displayed in the Project Explorer.

Comment 8 Eric D. Schabell 2013-09-09 07:40:37 UTC
I have cleaned up my previous demo repos and made new ones with just the project source code in them here:

https://github.com/eschabell/bpms-customer-evaluation-demo

https://github.com/eschabell/bpms-rewards-demo

Both clone, both are empty in the ui, both are much smaller so they clone quickly.

Same problems as before.

Comment 9 Petr Široký 2013-09-09 08:45:23 UTC
Eric, I see two things that probably prevent Project Explorer from displaying the assets.
 1) README.md has X permission. As I wrote above you need to remove that permission. This is bug and should be fixed in future versions.
 2) The project is placed in top-level dir of the git repo. I think business-central expects that the project is located in own dir, e.g.:

  git-repo-root/project-dir/pom.xml
                           /src
                           /README.md

However, even after making those changes I am still not seeing the assets in the Project Explorer. I will dig into this more and will try to find out why is this happening and if there is as workaround.

Comment 10 Petr Široký 2013-09-09 11:42:36 UTC
Looks like I found the root cause - the project does not contains kmodule.xml in src/main/resources/META-INF and the Project Explorer refuses to show the assets without that file. I have cloned the rewards demo and update it so it should be able to clone and see the assets now:

https://github.com/psiroky/bpms-rewards-demo.git

Comment 11 Eric D. Schabell 2013-09-09 23:50:25 UTC
I have modified the two repos to fit your setup, they import ok now, but did that on a plane trip over so no playground repo was created (needs to pull from git somewhere), therefore I have no groups when cloning these repos from filesystem.

When I switch to Project Authoring, they are not available in the UI, neither business nor technical.

Not sure if it is a use case but do need some way to create a group, like in the pulldown menu when cloning an option to create a new one? 

Without that, it is kinda broken.

Comment 12 Petr Široký 2013-09-10 13:19:18 UTC
You can't create/update/remove groups through web UI in ER2. This is known issue and its reported here https://bugzilla.redhat.com/show_bug.cgi?id=996263 . Looking at the commits it should be available in next build.

You have two options in ER2 in order to create group:
 1) use the demo (playground) repos that will also create "demo" group (you need internet connection, because the repos are cloned from github)
 2) create the group through REST api, which isn't that esay if you don't know the right command. It should be described somewhere is docs, but I can't find it right now.

Comment 13 Alexandre Porcelli 2013-09-12 19:12:46 UTC
As mentioned it was a bug related to file permission (X) - it's not fixed and pushed to kie-commons in master and 6.0.x branches

https://github.com/droolsjbpm/kie-commons/commit/9f9f35198
https://github.com/droolsjbpm/kie-commons/commit/80f0f6eb7

Comment 17 Petr Široký 2013-10-17 15:29:58 UTC
Verified fixed in ER4. Repository containing files with execute permission (X) can be successfully cloned.


Note You need to log in before you can comment on or make changes to this bug.