Script the process of building, testing, and releasing
jdennes opened this issue · 3 comments
Script the process of building, testing, and releasing this library.
See the createsend-ruby Rakefile for equivalent functionality.
So, building/testing is basically (as per the updated README):
cpanm --quiet --installdeps --notest .
perl Makefile.PL && make test
Release process should be scripted too.
I've just committed a script (package.pl) which performs the steps to create the distribution, ready to upload to CPAN.
It takes the version number as an argument and adds the relevant files into a new zipped tarball named Net-CampaiagnMonitor-[version].tar.gz, in the directory above the repository root.
It errors out if $VERSION in CampaignMonitor.pm does not match the new version number and also outputs a warning if the Changes file does not contain an entry for this version.
To run, e.g.:
package.pl 1.03
Let me know if you think I've missed anything in the script or if anything in particular could be improved.
I think best not to script the upload to CPAN as it's a good idea to do a quick check of the distribution before it goes live. Does this sound reasonable to you? Uploading is an easy process anyway - just need to login to PAUSE and select "Upload a file to CPAN".
👍 I've fixed the user agent, fixed the package script, and introduced semantic versioning, so I think v1.20.1 is ready. I still don't seem to have permission to upload an official version of Net::CampaignMonitor. Just need to package, upload, and tag, unless there's anything else you want to add. I'll start adding missing API functionality in a separate branch soon.
Closing this for now. In future, we should probably look into using Dist::Zilla