| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| |
| |
| |
| |
| |
| |
| | |
Puppet apply used to contain code that duplicated the functionality of
configurer.run. Refactored to share code.
Paired-with: Jesse Wolfe <jesse@puppetlabs.com>
|
|\ \ |
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The tests for the upstart provider were attempting to stub
Process::Status.exitstatus. However, this doesn't work (presumably
because Process::Status is implemented in C). As a result, the
upstart spec tests were failing if the most recent exit code was
nonzero. Changed the tests so that instead of stubbing
Process::Status.exitstatus to return zero, they execute a command that
is known to succeed (`true`).
Paired-with: Jesse Wolfe <jesse@puppetlabs.com>
|
|\ \
| |/
|/|
| |
| |
| | |
* ticket/next/2866:
(#2866) yum should support downgrade.
(#4711) Provide unit tests for yum package provider.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
patch originally from Grzegorz Nosek with contributions on
the test from Oliver Hookins.
checks if the current version is greater than the should
version, if so, calls yum downgrade.
Reviewed-by: Matt Robinson
|
|/ |
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch removes the escaping of valid UTF-8 sequences as "\uXXXX".
This code was unreliable, as it relied on Iconv's ability to convert
those codepoints between UTF-8 and UTF-16, but some versions of Iconv
barf on some valid codepoints.
Invalid UTF-8 sequences are still passed through unchanged. We believe
that this is fine; if you are concerned about complience with the JSON
standard, what we are doing is equivalent to:
* interpreting binary files as Latin-1 encoded character sequences
* JSON-encoding those characters according to RFC 4627
* outputting the JSON as Latin-1
This allows all raw binary files to be transmitted losslessly.
Paired-With: Paul Berry <paul@puppetlabs.com>
|
|\ \
| | |
| | |
| | |
| | | |
* maint/next/all_tests_run_on_their_own:
maint: Fix tests that don't run on their own
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
From the spec directory I found all the specs that fail when run on their own.
for TEST in `find . -name "*.rb" -type f`; do
spec $TEST > /dev/null 2>&1
if [[ $? != 0 ]]; then
echo $TEST
fi
done
All of them were cases of missing requires.
Paired-with: Nick Lewis <nick@puppetlabs.com>
|
|\ \
| | |
| | |
| | |
| | | |
* maint/next/fix_missing_require_test_failure:
maint: Fix a test that was missing a require
|
|/ /
| |
| |
| | |
Paired-with: Nick Lewis
|
|\ \
| | |
| | |
| | |
| | | |
Manually resolved conflicts:
spec/unit/configurer_spec.rb
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Using the cache terminus system, when --report is on, we are now
caching the last report as a yaml file in the $lastrunreport file
(which by default is $statedir/last_run_report.yaml).
Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Puppet apply inconditionally saves its last run summary
like puppet agent.
Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Once a configuration run is done, puppetd will save on the node a
yaml summary report roughly akin to:
---
time:
notify: 0.001025
last_run: 1289561427
schedule: 0.00071
config_retrieval: 0.039518
filebucket: 0.000126
resources:
changed: 1
total: 8
out_of_sync: 1
events:
total: 1
success: 1
changes:
total: 1
This is almost an hash version of the current --summarize output, with
the notable exception that the time section includes the last run unix
timestamp.
The whole idea is to be able to monitor locally if a puppetd does its job.
For instance this could be used in a nagios check or to send an SNMP trap.
The last_run information might help detect staleness, and this summary
can also be used for performance monitoring (ie time section).
The resource section can also show the number of failed resources.
Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
|
| |\ \
| | | |
| | | |
| | | | |
This marks the end of the agile iteration from 11/3-11/10.
|
| |\ \ \
| | | | |
| | | | |
| | | | | |
This marks the end of our first agile iteration.
|
|\ \ \ \ \ |
|
| | |_|_|/
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Puppet apply and Puppet agent use different code paths to run the
transaction. In the code path for Puppet apply, we weren't passing
the report to catalog.apply, and as a result catalog.apply was
creating its own report to store metrics in; this report was then
discarded. As a result, reports generated using "puppet apply" had no
metrics, and the "--summarize" option didn't work at all.
Fixed by modifying the "puppet apply" code path to pass the report to
catalog.apply. In the future it would be nice to refactor the two
code paths to be the same.
Paired-with: Jesse Wolfe <jesse@puppetlabs.com>
|
|\ \ \ \ \ |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
If the hash containing log destinations gets corrupted, Log.close_all
could fail silently. This change adds an exception to make these
failures easier to debug should they ever happen again.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
destination.
Using an Array as a log destination is unreliable because Puppet's log
mechanism stores log destinations in a hash whose key is the
destination itself. Since arrays can change their hash when they are
modified, this was causing the log destination hash to become
corrupted, producing sporadic spec test failures.
|
|/ / / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
In configurer_spec.rb, replaced some mock classes with actual
Puppet::Transaction::Report objects. In log_spec.rb, stopped using
the Array type as a log destination, since doing so was unreliable.
|
|\ \ \ \ \ |
|
|/ / / / / |
|
|\ \ \ \ \ |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
commit:ee7d2f92f9d3ec45b5c3a9cd3fe2f5832b17f23b
|
|\ \ \ \ \ \ |
|
|/ / / / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The variable 'ast' was being used as shorthand for Puppet::Parser::AST,
but a test was also trying to use it as a local variable, causing
problems.
|
|\| | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Just a few additional tests for the new property "comment" of the
host type.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
When the parsefile provider for host parses /etc/hosts, it throws any
inlinecomment away. As a result they are also purged in /etc/hosts after
a puppetrun that detects a change. That could be dangerous because you
will lose information even about unmanaged resources.
So if you have something like
192.168.0.1 hostentry_not_managed_by_puppet # Important comment
in /etc/hosts the endresult will be
192.168.0.1\thostentry_not_managed_by_puppet
This patch introduces a new property "comment" for the host type. The
provider is nearly a complete rewrite and a lot shorter and hopefully
easier to understand.
|
| |/ / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
I noticed that the hostprovider will remove all inline comments from the
/etc/hosts file, when puppet updates at least one entry. Puppet will also
remove comments from entries, the user doesnt want to manage with
puppet.
To split up changes a bit this commit will only introduce tests for the
host type and the hostprovider. A few will fail, indicating the bug:
The hostprovider parses all entries and builds a hash. When building
the recordhash all comments are discarded. When puppet has to update at
least one entry it uses the to_line function to convert the record hash
back to a file. Because the comments are not stored in the hash, they
cannot be written back to the file.
|
|\ \ \ \ \ |
|
| | |_|_|/
| |/| | | |
|
|\ \ \ \ \ |
|
|/ / / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
We've switched to using list_lists --bare which shows the internal_name
rather than "real_name", which is the authoritative identifier.
Doing this also means we have less output to scrub, so the code is simpler.
Signed-off-by: Nigel Kersten <nigel@puppetlabs.com>
|
|\ \ \ \ \
| | |/ / /
| |/| | |
| | | | |
| | | | |
| | | | | |
Resolved conflicts manually:
spec/integration/indirector/bucket_file/rest_spec.rb
spec/integration/indirector/certificate_revocation_list/rest_spec.rb
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
spec/integration/indirector/rest_spec.rb has been deleted in puppet’s
next branch because it was found that the things being tested were
already covered in spec/unit/network/http/*. Also, the tests being
deleted were so overly mocked they weren’t testing much, and firing up
webrick as part of the tests was slow and causes intermittent failures
on Hudson.
This was discussed on the dev mailing list in the really long thread "No
puppet developer patches to the puppet-dev list".
Reviewed-by: Jesse Wolfe <jesse@puppetlabs.com>
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The patch for #4726 causes old unit tests of the rrd reporting
infrastructure to run on my machine. These tests were calling the old
report api, which does not succeed.
Also, the rrd settings had unintentionally been moved out of the
:metrics section, making it possible that the rrd report directory would
fail to get created during testing.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
There was a section of code that didn't take the legacy RRD library into
account. This caused a unit test failure, but only if you have the RRD
legacy library installed, which I did.
Paired-with: Jesse Wolfe <jesse@puppetlabs.com>
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This is based on the discussion on ticket, simplified slightly and with test
adjustment.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The currious part is that this wasn't noticed before since it appears to block
server-first migration to 2.6.x and doesn’t appear to be the consequence of a
recent (2.6.3) change (unless, as is quite possible, I’m missing something).
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
When the responsibility for type-name resolution was moved to the AST nodes in
commit 449315a2c705df2396852462a1d1e14774b9f117, at least one instance was
missed: the space ship operator
Myclass <<| tag == foo |>>
fails unless Myclass has been previously loaded. This commit adds the lookup
to AST::Collection nodes in the same way it was added to the other node types.
Note that I haven't audited the other note types for similar cases.
|
| | | | |
| | | | |
| | | | |
| | | | | |
My code smell routines bobbled this one, so I'm fixing it manually.
|
| | | | | |
|
| | | | | |
|