Move this documentation to the 'commands' script so that everything is self-documenting.
This document describes how to build, test and package this module.
After doing a bit of searching, I stumbled across a makefile/script in the Parallel::SubFork CPAN package that looked interesting.
I'm still testing and fine tuning this, so fixes may follow. Using this script, most of the test and dist tasks can be automated:
# Get brief info on current package
./commands info
# Install local version
./commands install
./commands clean
# Test current working tree
./commands test
# Create a new dist tarball and check it
./commands distcheck
# To do the whole release (clean, test, dist, distcheck, tag, push, upload)
# Note: use this when _not_ using gitflow.
./commands release
# To do the release with gitflow (be sure to bump versions in source!)
./commands clean test dist distcheck
git flow release finish <RELNUM>
git push --tags origin master
If the distcheck fails with "No such file: ...", the file is still in the MANIFEST, but probably has been removed or renamed in the distribution.
These notes are superceded by the above script, as well as the fact that the automated fetching of tarballs from Github by the PAUSE server seems to be broken.
Using "git flow"
git flow release start 0.5
# bump release string in META.yml and lib/Config/Versioned.pm
make veryclean
Pushing CPAN modules from Github to CPAN (from http://blog.usarundbrief.com/?p=36)
-
Check that Makefile.PL, META.yml and MANIFEST are in the top directory
-
Tag the release and push the tag to github
git tag rel_0.5 git push --tags
-
At PAUSE (https://pause.perl.org/pause/authenquery?ACTION=add_uri), enter the URL and click on "Upload this URL"
http://nodeload.github.com/mrscotty/Config-Versioned/tarball/rel_0.5