BundleMan 1.1.0 review
DownloadBundleMan try to manage releasing of application build on versioned products under subversion. An application is a products suite
|
|
BundleMan try to manage releasing of application build on versioned products under subversion.
An application is a products suite defined using subversion svn:externals property. An application is a bundle of products.
A product is just a versioned piece of software.
Releasing an application is about taking care of tagging the source repository, managing version of each products, managing CHANGELOG, creating a source package archive, giving ways to maitain a release without blocking the trunk development.
Here are some key features of "BundleMan":
BundleMan is free software distributed under the GNU GPL.
It uses a recommended trunk/branches/tags repository layouts for products and bundles.
It uses standard versioning MAJOR.MINOR.BUGFIX-RELEASE for products.
Versioning of products is done automaticly by analysing a CHANGES file.
Enforce CHANGELOG quality by requiring a product CHANGES file.
It Generates an application CHANGELOG.
There is no locking of the trunk or version's conflict when patching a released application.
Can manage public, private or remote products.
BundleMan is written in python and can be easily customized.
Examples:
You can play with BundleMan in a sandbox using the unit test environment.
From the extracted archive:
$ python setup.py test
running test
...
INFO: Archive: /tmp/bm-jE9JMJ/co/APP.tgz
...
Ran 6 tests in 72.976s
OK
Look at the temporary folder /tmp/bm-{WhAtEvEr}/ you will find a svn folder which contains the svn sandbox repository and a co folder with working copies of an application. For example co/app is a trunk bundle with 2 empty products foo and bar. You can test some bm-bundle commands from here, try bm-bundle -v then try to release this apps following the use case below.
Requirements:
Subversion 1.2.0
What's New in This Release:
This new release brings new possibilities like releasing a bundle, generating a global changelog and, scp-ing the archive in one step.
The log file path is now configurable. Some bugs were fixed.
BundleMan 1.1.0 keywords