(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>
Fix #6561 - Better looking puppetdoc CSS for rdoc mode

From: Duncan Phillips <duncan@yola.com>

Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
Restrict the regex to only allow 0 or 1. Not 10.
(#21478) Add plymouth-ready to excludes list

An update to Ubuntu 12.04's plymouth package, version 0.8.2-2ubuntu31,
introduces a new upstart service, plymouth-ready in order to fix
the bug detailed here:
https://bugs.launchpad.net/ubuntu/+source/lightdm/+bug/982889

This new service uses instances, which puppet does not yet fully
support, and attempting to retrieve the status of this job causes
puppet to fail (for example when running "puppet resource service").

Adding plymouth-ready to the excludes list allows puppet to output
the status of services that it can handle competently while avoiding
the service introduced by this package.
(#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>
Add ignore entry for Eclipse specific .project file

The Eclipse IDE adds a .project file to the root of each project.
This commit ensures that the file is ignored and doesn't get
inadvertently committed.
(#18255) - Follow http redirections

This patch adds support for HTTP redirection in the Puppet HTTP
client.

The http client includes a redirection limit, and recreate the
redirected connection with the same certificates and store as the
original (as long as the redirect new location is ssl protected).

This patch allows redirection following for all HTTP methods, which
in the Puppet ecosystem shouldn't be an issue.

Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>

Use a loop - temp commit
(#6561) increase rdoc output font size and fix facts display

Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
(#6112) Only attempt to sign a certificate once.

Prior to this patch, autosigned certificates would see a second call to
CertificateAuthority#sign which would result in an extraneous error
message being logged.

This patch short circuits and returns the signed certificate if
available prior to attempting to sign.

It also clears a duplicate host assignment in
CertificateAuthority.generate, and logs autosigning attempts.

A new acceptance test has been added to document the current puppet cert
generate behavior (with the above change) on a host that is the CA, on
one that is not, with and without autosigning, with and without
submitting --dns_alt_names.
(Maint) Fix warnings issued by yard

There were many uses of incorrect tags (@returns instead of @return),
unnamed params (@params without specifying which param) and inccorect
use of multiple variations (@params for the same param many times
instead of using @overload). This fixes many, but not all of the
warnings issued by yard when it generates documentation.
(#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
(maint) Stub further out in csr signing tests
Merge branch 'issue/master/6112-puppet-cert-generate-clashes-with-autosigning'

* issue/master/6112-puppet-cert-generate-clashes-with-autosigning:
  (maint) Stub further out in csr signing tests
  (#6112) Only attempt to sign a certificate once.