We adopted buckminster for our build process in July.
Our setup was to use Ant, performed by the CruiseControl server.
We chose it because we have several projects living in several repositories. We have several RCP products that use different combinations of these projects.
- The statement (and assembly) management for each of these products had to be completed with the metadata we already wrote (manifest files, product files). It was just too easy to get assembly and dev metadata due to synchronization.
- Building packages and creating a product is still not easy to do manually.
- New starters should start and run quickly. Two + days to set up dev environment is not acceptable.
In general, I found this to be a very powerful tool with poor documentation. There are many new concepts, and because this is the basis for including tools, some of these names for these concepts can be quite abstract.
However, the buckminster has excelled in resolving the three problems described above.
Other additions:
- It can boot itself, as in: it can test itself, given the minimum core
- It seems to be actively developing
- Support via the mailing list is concise but generally helpful.
- It has a rudimentary scripting language. Very rudimentary.
On the other hand (except for the lack of documents):
- it is still not mature - you will find random errors and some functions that should be there, but not.
- I could not figure out how to make a test package.
- Testing OSGi products is still nontrivial and not easy to do without a head.
All in all, I would say it took some time to sleep, but it does an excellent job. I can't compare it to Ivy or Maven, although Spring's adoption of OSGi can provide critical mass in the minds of Maven developers.
I answered a few questions regarding buckminster for help with startup.
jamesh
source share