summaryrefslogtreecommitdiffstats
path: root/lib/puppet
Commit message (Collapse)AuthorAgeFilesLines
* Fix #4726 Update puppet rrdtool metric code to support modern rrd ruby bindingsJesse Wolfe2010-09-282-10/+40
| | | | | | | | | The rrd project has been shipping ruby bindings since 1.3.0, and the old rrdtool ruby library is no longer being maintained. This patch is based upon Davor Ocelic's submitted code, with the addition that I've added conditionals so it can still call the old rrdtool library if a modern rrd is not installed.
* Fix #4226 - Prepend 'Puppet CA: ' to fqdn for default root ca_nameJacob Helwig2010-09-283-12/+6
| | | | | | | | Having a root ca_name that matches the fqdn of the puppet master would cause certificate lookup problems on some clients, resulting in failed SSL negotiation. Signed-off-by: Jacob Helwig <jacob@puppetlabs.com>
* Fixes #4852 - error messages involving Whits now mention Classes insteadNick Lewis2010-09-282-0/+5
| | | | | | | | | Whits are inserted into the dependency graph in the place where an empty class is being required. Unfortunately, when such a class is involved in a loop, the error message shows the cycle as involving Whit[Classname]. This patch changes it to say Class[Classname], which is much easier to understand. It also fixes puppetdoc from generating documentation on the Whit type.
* Fix #4267 - Create a backup before dropping permissionsJesse Wolfe2010-09-281-0/+7
| | | | | This change just forces a file to be written to the filebucket before we drop the permissions necessary to do so.
* (#4763) Don't call a method that was removed in Rails 3 activerecordMatt Robinson2010-09-223-6/+12
| | | | | | | | | | Calling this method caused storeconfigs not to run. ActiveRecord::Base.allow_concurrency was deprecated in Rails 2.2. We support activerecord 2.1 and higher, so we still need to call this method for 2.1. I factored out the code that determines our activerecord version to a method in util so that the code was easier to read and test.
* Fixed #4763 - Hardcoded ActiveRecord versionJames Turnbull2010-09-222-2/+2
|
* Fixes #4822 -- Puppet doc -o option brokenPaul Berry2010-09-221-21/+17
| | | | | | | | | | The global "-o" option ("--onetime") was overriding the application-specific option "-o" because global options were being sent to the OptionParser after application-specific options. Modified the order in which options are sent to the OptionParser to have the correct behavior. Also merged together the two methods that were applying options so that the order is more explicit.
* [#4798] Puppet doc manifests documentation mode brokenPaul Berry2010-09-221-6/+9
| | | | | | | | | | | | When running puppet doc, if the directory containing the user's specified manifest file overlaps with the modules directory (i.e. they are the same directory or one contains the other), Puppet doc would try to parse the overlapping files twice, triggering an exception which made the documentation run fail. Fixed the bug by adding a check to the RDoc::Parser#scan method to prevent re-parsing of files that have already been parsed. Also added a spec test to verify that this works.
* [#4692] undefined variables cause :undef to be passed to functionsPaul Berry2010-09-221-1/+1
| | | | | | | | | | The :undef symbol, which we use internally to distinguish between undefined variables and variables whose value is the empty string, is being leaked in calls to functions (e.g. "split"). This is a departure from 0.25.x behavior, where undefined variables evaluated to "". This patch restores the 0.25.x behavior.
* [#4787] Missing require causing failureJesse Wolfe2010-09-221-0/+1
| | | | This code was using a constant that might not always be loaded.
* Fix for #4746 -- Newline goes at the _end_ of the lineMarkus Roberts2010-09-221-1/+1
| | | | Fredrik Eriksson's suggested change, from the ticket.
* Fix #4743: Allow the audit meta-parameter to accept both 'all', and :allJacob Helwig2010-09-221-3/+3
|
* [#4716] ResourceTypeAPI exposes implementation details that are likely to changePaul Berry2010-09-223-15/+19
| | | | | | | | | | | | | | | | | | | | | | Made the following modifications to ResourceTypeAPI: (1) returned nil from “define”, “hostclass”, and “node”. (2) renamed “mk_resource_type” and “munge_type_arguments” to “__mk_resource_type__” and “__munge_type_arguments__” to discourage customers from calling them. (3) Made ResourceTypeAPI a class rather than a module, and changed the parser to evaluate the contents of pure ruby manifests using a instances of this class. (4) Changed ResourceTypeAPI to insert newly instantiated types into Thread.current[:known_resource_types] rather than the default environment's known_resource_types. This effectively backports the fix for issue #4657 to 2.6.x. Also backported the new spec tests from #4657.
* Fixed #4819 - corrected cron documentationJames Turnbull2010-09-231-1/+1
|
* [#4771] Import of manifests with the same name only happens oncePaul Berry2010-09-232-49/+51
| | | | | | | | | | | | | | | The function import_if_possible, which was supposed to be responsible for making sure that no two threads tried to import the same file at the same time, was not making this decision based on the full pathname of the file, since it was being invoked before pathnames were resolved. As a result, if we attempted to import two distinct files with the same name at the same time (either in two threads or in a single thread due to recursion), one of the files would not always get imported. Fixed this problem by moving the thread-safety logic to happen after filenames are resolved to absolute paths. This made it possible to simplify the thread-safety logic significantly.
* Fix for #4708 - tagmail should allow . in tagnameDan Bode2010-09-231-1/+1
| | | | changed the regex so that tagmail allows . in tagname.
* Minimal fix for #4631 -- set implicit classes as in 0.25.xMarkus Roberts2010-09-231-0/+7
| | | | | | | This is a minimal fix for #4631 by reversing one part of the refactor for #1903 commit 0d4fd60c7c143cc1f4e4b0f99f359c09cbfbf21e. It fixes the immediate issue (implicit classes not being added to resources) but leaves open several other questions which are defered to #4687.
* Fixed #3707 - rpm, like dpkg-query exits 1 if the package is not installed. ↵James Turnbull2010-09-231-1/+2
| | | | | | | | | | Returning nil in this provider had the effect that on every run, puppet would end up calling yum erase . Returning the correct data structure resolves this. Thanks to Stephen Gran for the patch
* Fixed Puppet Doc TOC generationJames Turnbull2010-09-161-2/+2
|
* Fixed versioncmp function typoJames Turnbull2010-09-161-1/+1
|
* Documentation updates for Markdown conversionJames Turnbull2010-09-146-34/+29
|
* [#4756] addendum for #4756Jesse Wolfe2010-09-141-7/+9
| | | | | | | | | | | This fixes spec and unit tests indirectly related to the previous patch-revert. One failure was from trying to test the User Type's roles, when, on many platforms, the roles feature wasn't supported by the default Provider. Other tests could fail on some platforms because they assumed that unsupported attributes would be ignored with a warning, but the code was crashing instead.
* Fix for Bug #4756 - Providers no longer respect missing featuresJames Cammarata2010-09-141-0/+6
| | | | Restored deleted lines from type.rb and reinstated unit tests
* Fix for #4736 -- preserve case of defined resourcesMarkus Roberts2010-09-101-2/+7
| | | | | | This restricts the change introduced in #4691 to hostclasses, and leaves defined resources and nodes alone, thus more closely mimicing the 0.25.x behaviour. It also includes title, as this was similarly affected.
* Fix for #4637 --use of namevar missed in refactorMarkus Roberts2010-09-091-1/+1
| | | | | A use of namevar apparently slipped through the net or got (re)introduced in a merge/conflict resolution.
* Minimal fix for #4691 -- class name uppercased in $nameMarkus Roberts2010-09-071-1/+1
| | | | | | The class name is now stored internally with an initial capital, which changed the contents of $name in a way that broke some manifests. This fix stores the downcased version in $name.
* Fix for #4693 -- implicit stages should never be serializedMarkus Roberts2010-09-071-1/+1
| | | | | | | | | | | My fix for #4542 was overly enthusiastic about assuring that all resources had a stage, resulting in stages designations being serialized for resources in manifests which did not use resources (everything was in implicit main). This broke 0.25.x compatibility, as all catalogs now refered to stages. This patch scales back the change for #4542 slightly, supressing the setting of main on the puppetmaster and relying on the default behaviour on the client (for 2.6.x and later, treat it as main; for 0.25.x, do nothing).
* Fix for tests broken by fix for #4489 -- stub standaloneMarkus Roberts2010-09-071-1/+5
| | | | | | If the file streaming is to be thwarted when running standalone the test for standalone needs to be stubbed when running specs, lest the tests inexplicably fail.
* Fix for #4489 -- apply was using the rest terminusMarkus Roberts2010-09-072-0/+12
| | | | | | | | | | | | | | | | | Basing pervasive low-level behaviour changes on the application name isn't a good idea, but if we're going to do it we need to remember to update the test when we rename the application. Further, if we optimize around such low-level tests (as we did when implementing file-streaming) we need to carry the tests over into the new data paths. This commit addresses both of these isues, restoring 0.25.x stand-alone file serving by adjusting the process-name test in the indirector to recognize "apply" as standalone (and thus not use http to fetch the files) and by adding a branch to the file streaming code to do the same when fetching the content. I am not certain that this change is globally correct; there may be other related problems that will not be fixed (and may in fact be exacerbated) by this patch.
* [#4462] uncaught Timeout::ErrorJesse Wolfe2010-09-071-1/+3
| | | | | | puppet agent was not catching all species of exceptions, causing it to crash on net/http timeout errors. This patch broadens the types of exceptions that are caught.
* Fixed alias metaparam docs errorJames Turnbull2010-09-071-1/+1
|
* Skip apt-listbugs and apt-listchanges when installing from puppetDean Wilson2010-09-041-0/+4
|
* Fixed queue require for #4555James Turnbull2010-09-031-1/+1
|
* Fixed #4100 - Added http_caching to yumrepo typeJames Turnbull2010-08-311-0/+6
|
* Added cost parameter to the yumrepo typeJames Turnbull2010-08-311-0/+6
|
* Fixed extlookup documentation and spacingJames Turnbull2010-08-312-143/+134
|
* Fix for #4506 -- too much data being serializedMarkus Roberts2010-08-311-1/+1
| | | | | | | | | | | | The serialization of much of the memory image was being triggered by a copy of an unchanging method return value in an instance variable. I had introduced this as a performance hack. The results were correct, but when the object was serialized it took a huge amount of data with it (known_resource_types, and from there...) As the underlying costly operation is no longer being called (thanks to Paul and Jesse) the caching is no longer a significant performance boost, and can thus simply be removed.
* Fixed terminus example documentationJames Turnbull2010-08-292-4/+4
|
* Fix for #4456 -- need to accept some mime-type aliasesMarkus Roberts2010-08-242-4/+10
| | | | | | Rather than just creating a handler for the base mime-type (e.g. "text/yaml") we create some synonyms where appropriate (e.g. "text/x-yaml", "application/yaml", etc.)
* Fix for #4489 -- apply was using the rest terminusMarkus Roberts2010-08-241-2/+2
| | | | | | | | | | Basing pervasive low-level behaviour changes on the application name isn't a good idea, but if we're going to do it we need to remember to update the test when we rename the application. I am not certain that this change is globally correct; there may be other related problems that will not be fixed (and may in fact be exacerbated) by this patch.
* Fix for #4542 -- included classes weren't assigned proper stagesMarkus Roberts2010-08-241-13/+6
| | | | | | This commit unifies the code paths on which classes are added, alters the default stage to respect the stage of the parent if any, and assures that the resource is notified if its stage is assigned (turning an implicit stage into an explicit one).
* Fix for #4501 -- reports not generated in standaloneMarkus Roberts2010-08-241-5/+10
| | | | | | | The refactors for 2.6.x stopped "puppet apply" from saving reports; this fix adds report saving back to puppet apply but leaves a number of related issues (code path consolidation, report contents, etc.) unresolved for future patches in the 2.6.x series or more significant refactoring in 2.7.x.
* Start server before agentBernhard Miklautz2010-08-211-1/+1
|
* [#4555] puppet queue tries to call code it hasn't requiredJesse Wolfe2010-08-211-0/+1
| | | | | | | | | puppet queue was trying to call .subscribe on Puppet::Resource::Catalog::Queue, but that object had not been loaded into the ruby interpreter. This bug was partially masked by ruby's confusing constant resolution, which was incorrectly returning the Puppet::Application::Queue class instead of throwing a NameError
* fix #4528 - treat * as absentPeter Meier2010-08-211-1/+1
| | | | | | | Internally the cron type is seeing params containing only '*', as absent. However, if a user was setting a parameter explicitely as '*', we weren't munging it to be absent. Hence, we were setting this param over and over again.
* Fix for #4518 -- classes not getting added to compiler.classesMarkus Roberts2010-08-211-0/+1
| | | | | | | The responsibility for adding classes to the compiler's classes list (for use in constructing classes.txt) moved around a bit in the 0.25 to 2.6 transition before being dropped in a merge conflict resolution. Ooops. This restores it, and adds tests to prevent regression.
* Maint. -- Fix test failures broken by previous commitMarkus Roberts2010-08-211-2/+8
| | | | | | | This basically involved adding a search method to the yaml indirector, which I did by copying the one from ssl_file and fiddling with it until the tests passed. Since the most straight forward way to do this required extending the interface to the path method I added tests for the additional behaviour.
* Maint. Removing code at the request of the original authorMarkus Roberts2010-08-211-10/+1
| | | | A contributor has requested that his changes be removed from puppet.
* [#4298] Puppet apply prints an error if the file to apply doesn't existMatt Robinson2010-08-211-1/+4
| | | | | | | | Also warns you it's skipping files if you pass it more than one file to apply. Reviewed-by: Nick Lewis <nick@puppetlabs.com> Signed-off-by: Matt Robinson <matt@puppetlabs.com>
* Further RST to Markdown fixes for types, values, testsJames Turnbull2010-08-1214-183/+130
|