Releaser
Releaser is a set of rc scripts to help manage and automate software package releases.
Every software package should have a .pkg file containing necessary information about the project and modules to be used.
The prerel script runs the selected pre/ modules and uses the .pkg information and the input from the user to generate a release specific .rel file. Typical tasks in pre modules includ e building of tarballs from vcs repositories, generation of changelogs, etc.)
postrel uses the .rel and other output of the pre scripts to actually 'execute' the release by running the post modules, this usually includes uploading tarballs, sending announcements to m ailing lists, uploading news page in website, freshmeat submission, etc.
Setup requirments
You will need Plan 9 from User Space (mostly for the rc shell).
Make sure you configure your ~/.netrc with your freshmeat user and password (see the the freshmeat-submit page for details).
You need a ~/.relrc that sets the variable relinstallpath, for example:
$ cat ~/.relrc
rel_install_path=/home/uriel/dev/releaser/
Pkg format
The .pkg files are evaluated by the rc shell, and consist mostly of variable deffinitions. See the examples in etc/ for reference.
Developement
You can check out the latest code with mercurial:
$ hg clone http://gsoc.cat-v.org/hg/releaser/
Or browse the online repository here.
TODO
- post/google-code-upload
- post/sf-upload
- allow to configure fm user/pass from relrc rather than netrc
- remove requirement to set relinstallpath in ~/.relrc (done)
- Ohloh support
- Add support for more scms (git, svn, etc)
LICENSE
Public domain