(packaging) Use the packaging loader for tasks

The packaging repo now uses an explicit loader which handles loading the
various rake tasks in packaging. This commit updates the puppet Rakefile to use
the loader instead of a blind glob of the ext/packaging/tasks directory. We
move this load into the rescue LoadError block because the packaging repo won't
always be there, and define RAKE_ROOT and use it since its used in more than
one place in the Rakefile.

Signed-off-by: Moses Mendoza <moses@puppetlabs.com>
(#21264) Update rgen dependency to 0.6.5

Commit ec6b51a8ded9245df9606a57d53674c62bddc11e updated the rgen dependency in
the Gemfile. This commit makes the same dependency explicit in the various
packages (deb, rpm, gem). We pin the version hard at 0.6.5 to prevent potential
breakages with future versions of rgen.
Merge pull request #1733 from haus/ticket/stable/21264_update_rgen_depends

(#21264) Update rgen dependency to 0.6.5
(packaging) Remove Ubuntu Oneiric from build targets

Oneiric is EOL, and we are no longer building for it. This commit removes the
Oneiric target from the build list for puppet.

Signed-off-by: Moses Mendoza <moses@puppetlabs.com>
Merge pull request #1741 from MosesMendoza/maint/stable/update_for_packaging_loader

(packaging) Use the packaging loader for tasks
Merge pull request #1740 from MosesMendoza/maint/stable/remove_oneiric

(packaging) Remove Ubuntu Oneiric from build targets
(packaging) Update PUPPETVERSION for 3.2.3-rc1

Signed-off-by: Moses Mendoza <moses@puppetlabs.com>
(#19727) Collapse multiple leading slashes

Puppet 2.6.5 to 2.7.19 collapsed multiple leading slashes. This behavior
was changed in 2.7.20 in commit 912ed346 as a result of no longer
calling `File.split`.

This commit reinstates the behavior that existed previously and adds
tests for both double and triple leading slashes.

Paired-with: Rob Reynolds <rob@puppetlabs.com>
Paired-with: Kylo Ginsberg <kylo@puppetlabs.com>
(Maint) Don't prefetch from /tmp/test

Previously, the parsed file provider was prefetching and reading from
/tmp/test, which failed if you happened to have a directory /tmp/test.

This commit updates the test to use a temporary and empty file from it
prefetches.

Paired-with: Rob Reynolds <rob@puppetlabs.com>
Paired-with: Kylo Ginsberg <kylo@puppetlabs.com>
Merge branch 'ticket/stable/19727-double-slash' into stable

* ticket/stable/19727-double-slash:
  (Maint) Don't prefetch from /tmp/test
  (#19727) Collapse multiple leading slashes
(#21653) Skip modules with no manifest directory when loading resource types

The resource_type face tries to parse all manifests from modules, but was
failing if a module didn't have a manifest directory. This is not an error
condition so we just skip those modules.
(maint) Refactor type_loader, mostly specs

This cleans up the specs for type_loader a lot and slightly refactors a few
methods in type_loader.
Merge pull request #1752 from pcarlisle/ticket/21653-resource-type-cant-find-file

(#21653) Skip modules with no manifest directory when loading resource t...
(packaging) Update PUPPETVERSION for 3.2.3

Signed-off-by: Moses Mendoza <moses@puppetlabs.com>
Merge branch 'release/3.2.3' into stable

* release/3.2.3:
  (packaging) Update PUPPETVERSION for 3.2.3
(#7911) Simplified libs section of installer

This will make sure that all files in the source lib directory
make it into the ruby sitelib directory

As the type of files being included in the lib directory has
grown, rather than call each filetype out specifically in the
installer (ie globs like lib/**/*.rb, lib/**/*.py), it seems
easier to just move everything from the source lib directory
to the the sitelib directory during installation.

The new glob lib/**/* now includes directories in the glob
list.  This caused an error in do_libs because File.install
would be called on a directory resulting in a 0 byte file being
placed where a directory should have been.  The error is generated
on the second pass of the loop when File.makedirs is called, and
the file exists and is NOT a directory.  This is the reason for
skipping directories in the do_libs section.
(packaging) Remove createpackage.sh from puppet

This shell script has been replaced and superceded by the packaging rake tasks.
Running `rake package:bootstrap` followed by `rake package:apple` will build a
dmg locally in a similar manner to this script.
Merge pull request #1712 from jjulien/missing_config_7911

(#7911) Simplified libs section of installer
Pin redcarpet gem to the last version that supported Ruby 1.8
(Bug #21768) Update puppet for F19

Prior to this commit, there was no support for Fedora 19. This
commit modifies build_defaults to include F19 in the mocks,
and removes the ruby(abi) requirement. This is because F19 no
longer provides ruby abi.