Age | Commit message (Collapse) | Author | Files | Lines |
|
Puppet does not consider Facter 1.7.5 to provide external_facts, so the
pluginfacts step was being skipped when specs were run with Facter
1.7.5. Altered the plugin spec to work with the application rather than
the face so that we can check the rendered output, and to generate lib
and facts.d dirs to normalize the output (otherwise the downloader
reports the creation of the base plugin target directories, something
which normally would be handled by Puppet's Settings catalog).
As part of this, I noticed that the plugin face would return different
results. If external facts were supported, it would return the list of
any external facts pluginsynced. Otherwise it would return the list of
any plugins pluginsynced. Changed this to accumlate and list both sets
of changes.
|
|
Two specs were using the same constant names to track classes that they
were generating Memory indirector classes for. Because specs share the
same module namespace, they were overwriting one another on load and
causing spec order failures. Guarding the specs within a namespace
module should keep them isolated and prevent them for unexpectedly
tinkering with one another's test setup.
|
|
Puppet::Configurer::Downloader is also called by the plugin face, but we
were not submitting an environment there. On Ruby 1.9.3 this nil
environment was being interned as :'' and would produce a failure server
side when a request with an empty environment was parsed. On Ruby
1.8.7, nil raises an error when interned and it was failing much sooner
on the agent side.
To resolve this, we're passing in a reference to the configured
environment. Also added an integration test for the plugin face, because we
weren't seeing any failure in our test suite.
|