(#22324) Remove a trailing comma in with_puppet_running_on args
(#22324) Acceptance tests clean up user/group settings

Two acceptance tests which cause puppet to modify user/group of files
managed by settings via puppet/defaults.rb were not cleaning up to
ensure that the service user once more owned these files.

Adds teardown to ensure puppet resets its settings with service user.
(#22324) Generalize distmoduledir setting for windows module install

The pe test changes were using a Beaker host setting
agent['distmoduledir'] which was not set for hosts of type Windows.
Furthermore, the actual value is dependent on confdir which varies
by verison according to COMMON_APPDATA, and so is not practicle to
in the base Beaker Windows host settings.  So I'm setting it based
the returned confdir setting from the puppet agent on the host.
(#22324) Fix bash/windows redirect issue

Single quotes are needed to keep windows (2003 at least) from
interpretting the '<' as a redirection.  This is via cygwin/bash calling
through 'cmd /c'.  It is difficult to quote the command and args through
Beaker, which is why I'm resorting to a Command.new here.
(#22324) Ensure windows certs are properly removed and regenerated

There are two issues in this test on windows. The first involves spaces
in the path to the ssldir silently preventing us from removing the ssl
dir unless we quote it.  This causes the window's agents certs to fall
out of sync with the master.

The second issue has to do with the confine and Beaker modifying the
testcases host array such that the teardown reset of the ssl was also
confined not to run on windows and again we leave the test with certs
out of sync on windows and failing in subsequent tests that rely on
master/agent communication.

The fix here is to quote the ssldir path, and guard the confine so that
we recover the full array of hosts for the teardown.
(#22324) Quote path to ensure it works with spaces

Quoting here to ensure our path is still viable if it embeds spaces.
(maint) Acceptance harness updated to use Beaker

Shift from puppet-acceptance to beaker.
(maint) Update beaker node configurations with full template paths

A template path with just the machine name ('ubuntu-1204-x86_64' for
example) may find the wrong template if the name has been used elsewhere
in vsphere.  So we are including the full path here to the delivery qa
vcloud templates to make sure we get the right instances.
(maint) Windows acceptance configuration

foss-win-2003r2-ruby-193.yaml has a working configuration with a vcloud
rhel master and the old static win2003r2-ruby-193 vm.

win2008.yaml is an experimental configuration with vcloud win2008 64bit,
but it has problems with the cygwin curl on 64bit platforms always
including header info: http://permalink.gmane.org/gmane.os.cygwin/141462
This makes it difficult to install packages through cygwin the way
beaker is expecting to be able to.
(maint) Extract package installation step as an acceptance lib

Pulls the code that was installing packages on acceptance hosts into an
acceptance/lib helper library.
(maint) Handle repository configuration for redhat and debian

Previous harness assumed el-6-x86_64 for both master and agent.  This
change gets all of puppetlabs repository information for the constructed
puppet SHA for both redhat and debian and combines it in a single tarball.
The install setup test then handles extracting and installing the specific
configurations for the particular redhat/debian version based on the
host configuration.

The repos.tar can be pre-loaded so that it is only created once and then
bundled in the acceptance-artifacts.tar.gz for matrix jobs.
(maint) Pull repo install code into install_utils module
(maint) Add rake ci tasks for preserving test hosts

Adds rake tasks for preserving hosts from a package run, constructing a
temporary configuration tied to those hosts, and rerunning tests against
the preserved hosts without provisioning.

Rsync setup steps purge and reload the puppet packages, and then rsync
source differences (only debian at the moment).
(maint) Stops firewall on redhat/debian platforms

We do need the firewalls disabled for puppet kick tests to work.
Firewall service on Fedora is firewalld (F18 anyway).
(maint) Removed the old el6 config.yaml
(maint) Rewrite rake targets to provide clear git/package tests

We are making two types of calls, one for package tests, and one for
tests relying on git cloning.  This clears up the configuration, setup
and Rakefile targets to better capture this.
(maint) Ubuntu firewall service is ufw
(maint) Update .gitignore for additional Rakefile artifacts
(maint) Better rake targets for working with preserved hosts
(maint) Stop firewalls when running a test with git cloning