Extract version number directly from git

This uses `git describe` to extract the version number, automatically, in the
Modulefile - rather than forcing manual updates.

This handles dirty branches and nightly builds, though not as nicely as
I would like: because Puppet is strictly SemVer 1.0.0, we only have release
and pre-release versioning.

So, when a nightly is run we assume that the "trivial" version is bumped, and
mark as a pre-release of that.  This is the smallest step possible and ensures
that a full release will *never* be "less" than a nightly build.

Optimally we would postfix a SemVer 2.0.0 build version, but until that is in
all versions of Puppet in the field ... we are stuck with this.

Signed-off-by: Daniel Pittman <daniel@rimspace.net>
Better error detection and discovery for git versioning

Our CI systems failed to discover the version number, which is surprising, but
highlights a shortfall in debugging in this code.  This fixes that.

Signed-off-by: Daniel Pittman <daniel@rimspace.net>
Only use annotated git tags for versioning

I had turned on the option to use normal, unannotated tags as well as the
fully, heavy annotated tags that we actually use to indicate a release.

This broke when Jenkins internally tagged the repo with the build details,
since that light-weight tag was closer than the real version tag.

This drops that extra option to `git describe` to avoid that problem.

Signed-off-by: Daniel Pittman <daniel@rimspace.net>
Revert "Only use annotated git tags for versioning"

This reverts commit 730aac12ee7b8acdf9b43b59c2e4f9c32d48dc55.
Added a git mailmap to improve commit author mapping

The trivial mailmap sorts out a couple of people who committed with multiple
addresses, by updating them to their latest address...

Signed-off-by: Daniel Pittman <daniel@rimspace.net>
Update rz_broker support for metadata.