(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.