Add a crude 'refresh' task

This commit adds a task that parses the packaging
repo url and does a git pull on it, pulling in any
changes from the specified remote.

Signed-off-by: Moses Mendoza <moses@puppetlabs.com>
Merge pull request #52 from MosesMendoza/add_crude_refresh

Add a crude 'refresh' task
Fix missing desc from freight rc task
Merge pull request #53 from MosesMendoza/fix_missing_desc

Fix missing desc from freight rc task
Break out pe* tasks and add remote pe building

This commit pulls pe build tasks out into their own files,
even though they still rely on the base build tasks. It adds
pe remote build capabilities so devs can just run the build task
on a dev station and have the build happen remotely without having
to ssh in. The remote builds are made the 'default' and the local
builds are renamed with local_*, in anticipation of the remote
building being used more than local.

Signed-off-by: Moses Mendoza <moses@puppetlabs.com>
Add support for a pe branch in build_data
Make remote object clone recursive
Add auto-remote repo update on PE ship and fix path

This removes the hardcoded repo path in pe shipping,
and adds repo updating as a post-task of shipping.
It changes shipping so that pe-dev packages are always
shipped as unified assuming the default cow as the build.
Finally, this commit update pe shipping to use pe-the-
things instead of deb-the-things.

Signed-off-by: Moses Mendoza <moses@puppetlabs.com>
Place pe rpms under an rpm directory
Use monotonically increasing versions for pe dev building

This commit changs the version string when building a pe dev project to using
the commit number as part of version, e.g. what is suppled by the utility
method #get_dot_version. For example, given a git describe of 1.1.7-23-<hash>
this commit forms the version 1.1.7.23. This allows the version to continue to
increase as the commits increase, but it does present the difficulty that final
versions will be 'lower' than the previous build versions, but this can be
solved by tagging 'up', e.g. for builds at 1.1.7.23 just tag as 1.1.8, or by
keeping separate package repos/workflows entirely for enterprise production
and pe devs.
Add support for PE version in the extra yaml data
Add support for team-specific build-data files

This commit adds future-proofing for additional team building
of pe projects by providing the option for a team-specific
build-data extras file.

Signed-off-by: Moses Mendoza <moses@puppetlabs.com>
Merge pull request #54 from MosesMendoza/add_pe_remote_building_and_break_out

Add pe remote building and break out
Add support for excluding files in the tarball task

Many projects specifically exclude files from the tarball.
This adds support for this in the packaging repo.

Signed-off-by: Moses Mendoza <moses@puppetlabs.com>
Merge pull request #55 from MosesMendoza/add_tarball_excludes

Add support for excluding files in the tarball task
Fix the macro for %dist detection on rpm platforms.

Prior to this commit, when building an RPM on EL6, the dist tag would
still be tagged with el5.  This commits dynamically detects the dist
tag.

Dist is provided on all EL and Fedora systems except EL5.  The solution
is to query if it's EL and then see what the major version of the RPM is
that provides that file.

Fixes #50 Pull request as well.

Signed-off-by: Michael Stahnke <stahnma@puppetlabs.com>
Merge pull request #56 from stahnma/fix_dist

Fix the macro for %dist detection on rpm platforms.
Rename find_version to find_dist_version

this rename shoudl help prevent very avoidable namespace conflicts

Signed-off-by: Michael Stahnke <stahnma@puppetlabs.com>
Remove ENV['USER'] in rsync/ssh calls

By relying on ENV['USER'] in calling to ssh/rsync, we break anyone who has
different usernames on remote hosts. This removes the user prefixes, instead
relying on users to have an appropriately configured ssh config or identical
local and remote user names.

Signed-off-by: Moses Mendoza <moses@puppetlabs.com>
Dist needs to be an integer when compared to a number

Signed-off-by: Michael Stahnke <stahnma@puppetlabs.com>