mbr - mrt bulk release
Use this package if you have a lot of packages on atmosphere, you can bulk git pull
to keep your repo updated and publish bulk too.
I've added an easy way to bump versions too read more below :)
Requires:
- meteor installed
- node.js
- phantomjs - but only if you want to use the test feature...
Install:
$ npm install -g mrtbulkrelease
Usage:
$ mbr -h Usage: mbr [options] Options: -h, --help output usage information -V, --version output the version number -r, --release Release package, defaults to all packages in the list -u, --update pull from github -n, --name [name] Name of package to release -b, --bump <package> bump package version, default is "patch" eg.: 0.0.1 -> 0.0.2 -m, --minor bump a minor version -M, --major bump a major version -t, --test Test package from release list -f, --fix <package> Fix warnings
Add the package to the list
Add the packages to the list that you are working on and frequently publish to atmosphere. This makes stuff much easier to manage.
$ mbr -add packagefolder
You should be just outside the package folder, mbr will parse the package.js
Wildcard selectors
You can apply commands on multiple packages by adding wildcard *
Eg.
$ mbr -f raix:*
This will target all matches. This should work in general
Run tests
When writing packages you have to do qa and tests - some packages may depend on other packages and therefor break - now you can simply run a test on one package or bulk:
# run tests for one package mbr -tn my:package # run test including all non-paused packages mbr -t
You can use the -s
to specify what meteor
or mrt
to use for testing. My meteordev
is placed at ~/meteor/meteor
to use this instead I simply:
mbr -s meteor=~/meteor/meteor
note that using mrt
requires the user to kill the mbr thread - mrt
does not close the meteor server when killed
Bump and release version to atmosphere
You can bump version and release package in one line eg.:
# this will bump the patch version and release package mbr -b my:package -r # this will bump the minor version and release package mbr -mb my:package -r # this will bump the major version and release package mbr -Mb my:package -r
Bump version
You can bump version in smart.json
and push, this can be done manually or use the mbr
for this:
mbr -b my:package # this will bump the patch version mbr -mb my:package # this will bump the minor version mbr -Mb my:package # this will bump the major version
Bulk release?
First check what packages need to be released, making sure you are not releasing packages you dont want to:
$ mbr
To release all:
$ mbr -r
Release just one package
$ mbr -rn my:package
Credit
@arunoda The code for the test integration is his work - I've just wrapped it into mbr with small modifications. travis-ci-meteor-packages
Thats about it
Contributions are welcome,
Kind regards Morten, aka @raix