Jack Polgar

Packmule, a project packager

The story behind Packmule is simple, there are certain project hosting sites that have a packager that processes repositories and creates archives from commits and tags.

However there is a certain site that has one of the worst packagers ever, and when it bugs it bugs bad, like reprocessing every tag ever, and uploading useless versions of the archives, and trying to get support from them is worse than trying to find water on the sun.

So I’ve had enough and will be ditching their shitty packager for my very own: Packmule. With Packmule all that needs to be done is run a single command packmule pack --ver 1.2.3, which reads a YAML file that contains the archive name and format then archives the current directory, for example: MyProject-1.2.3.zip.

The current version is nothing near what I want it to be, I plan on having it interact with SCM’s to get revision hashes and tag names that can be placed into the packaged files with the use of a placeholder, like %version% => 1.2.3 and %(file-)revision-short% => ab53j91a for example.

The best thing about Packmule though, is it’s not limited to what projects it can package like a site that will (for now) go unnamed. Packmule can package any project as long as a Packfile file exists.

For more information check out Packmule on GitHub.

Published on