(maint) Increase the check_for_downstream timeout to 20 min

And allow this to be overridden by an environment variable.
(#22324) Fix modules/install/already_installed tests for pe

These two tests check the behavior of the module install tool when the
module we request to install is already installed.  The tests were
simulating an installed module by manually creating some files, but this
misses the step of chowning files based on the owner/group settings of
the moduledir, which is something the puppet module tool does, and
something module_utils is explicitly testing.

Rather than trying to simulate the owner/group setting that puppet
module tool would perform, I start off by installing the module with the
module tool, and then the test continues as before by attempting to
reinstall.
(#22324) Remove redundant without_installed_modules test

This test does not work with a pe installation because it fails to
preserve the existing modules installed by pe.  It was replaced by
modules/list/with_no_installed_modules.rb (old test removed in 2efe4ad,
new test added in 35fb00d), and accidentally recreated by me in f41d8f3.
This reverses that last erroneous commit and removes it from the test
suite.
(#22324) Confine puppet manages own configuration test not to run on pe

There are a few changes to better determine user and group from puppet
configuration, but at the end of the day, a pe installation also manages
the pe-puppet user/group for critical resources like the document root
used by apache/passenger.  Puppet knows nothing about this, so
destroying and recreating the pe-puppet user/group is not tenable for a
pe installation and I'm confining this test not to run on pe hosts.
(#22324) Determine user/group from puppet configuration

The ordering test was assuming foss puppet user/group.

Now it takes user and group from puppet configuration so that it will
work in either a pe or foss run.
(#22324) Reports submission test checks puppetdb on pe runs

Writing reports to the filesystem is complicated for PE installations
by the locked down file permissions enforced by Apache.  For PE test
runs, this test now checks to see if there is a new puppetdb report for
the node.
(#22324) Puppet cert generate tests do not clear master ssl dir

A PE installation's ssl settings may not be easily cleared and recreated
(for the master node) as there are other components (passenger for
instance) which rely on the current settings.  This commit changes the
puppet_cert_generate_and_autosign.rb so that it does not delete and
recreate the master ssldir.  Agents are still cleared and reset.
(maint) Check jenkins queueItem as well for a pending job

The ci:check_for_downstream task would fail to find a job if it was
queued behind a currently running job as this are not listed in the
'builds' section.  The first queued item is listed under queueItem, and
this change checks there.  I have not found a way to query jobs queued
beyond the first.
(maint) Remove typo '3' in module_utils

An extra 3 crept into the beginning of the block.
(maint) Default xml output for beaker runs.

Ensures we generate xml xunit data by default running the acceptance
tests through Beaker.
(maint) Fix default secs for destroy preserved hosts task

Setting a default now if explicit nil passed for secs_ago.