-
-
Notifications
You must be signed in to change notification settings - Fork 304
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
BSN!=Dir , support for nested directorys #346
Conversation
I did a quick build & test and have 1 failure on my Linux machine:
But that is the same unstable test as I reported earlier in #318 So no test failures. |
Thanks. I will have a look.... |
no need to look into that test. |
I would try Workspace ws = Workspace.getWorkspace(new File("test/ws")); . Drop the src/. It runs fine here on OSX ... |
That really can't run because I get an NPE and an IAE, please discuss this under #318 |
are not projects so if we can not find a workspace it must be a bad project
need a new workspace
BundleSymbolicName or the project path
projectTest.testBuildAll() is failing. It looks like it is assuming that dependson includes the project itself, however before we call Project.traverse we have already add the current project to the traverse list. To me it makes sense the the dependson should not include itself. |
prepared. If is is a resolution issue then more than likely it will never be resolved for that pass of the build. My case blows up the stack on large projects where a top most bundle will not resolve.
that and add new locations to the workspace as projects are added
build items ar in the same relative space. Be smarter about getAllProjects(), cache , add what we currently have and then only scan the dirs once. Lets assume build directories will not appear out of thin air
stay failed until we are told otherwise.
When we are calculating build order see if the project is not resolved and try one more time
I really do not want to go to nested workspaces in bnd. Personally I feel the bndtools is the place where we want to support multiple bnd workspaces in one Eclipse workspace. In that model, each workspace would have its own repository but the bnd workspaces would be independent. We will discuss this topic in the bndtools hackaton next month. |
Here is attempt #2. I have added 19 tests around Workspace to test the changes and now the existing test suite runs. The bnd and bndlib bundles are running in our env which is a command line ant build and eclipse using bndtools, with GIT as our SCM.
To use the nested workspace in the projects parent directory you need to add a file that contains one line , that is a relative location of where the cnf lives. If the location is absolute we will find it but assume it is not a nested project.
So a sample GIT layout in eclipse
myWorkspace
cnf.repo/
cnf/build.bnd
repo1/
proj1/bnd.bnd
proj2/bnd.bnd
cnf -> contains ../cnf.repo
repo2/
proj3/bnd.bnd
cnf -> contains ../cnf.repo
To use the BSN!=directory name you need to add -directoryNotBSN to the cnf/build.bnd
If this is set the BSN is Bundle-SymbolicName that is in the projects bnd.bnd. If this is missing it is assumed that this is not a valid project.