summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Bug #5423: This moves the home directory property before the uid property, ↵Jonathan Boyett2010-12-061-5/+5
| | | | thus minimizing room for damage when usermod is in use.
* Merge branch 'ticket/2.6.next/4943' into 2.6.nextNick Lewis2010-12-024-2/+170
|\
| * (#4943) Add puppet inspect applicationNick Lewis2010-12-024-2/+170
| | | | | | | | | | | | | | | | | | "puppet inspect" will load the locally stored YAML catalog and record the current state of the audited properties in the catalog. It uses settings specified in the [agent] configuration section, and will send its inspect report to the specified server. Paired-With: Jesse Wolfe
* | Merge branch 'ticket/2.6.next/5261' into 2.6.nextMatt Robinson2010-12-022-22/+16
|\ \ | | | | | | | | | | | | * ticket/2.6.next/5261: (#5261) Fix #5261 Don't escape Unicode characters in PSON
| * | (#5261) Fix #5261 Don't escape Unicode characters in PSONJesse Wolfe2010-12-022-22/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | | Merge branch 'maint/2.6.next/bogus_mongrel_daemonize_test' into 2.6.nextMatt Robinson2010-12-021-6/+0
|\ \ \ | |/ / |/| | | | | | | | * maint/2.6.next/bogus_mongrel_daemonize_test: maint: Remove bogus mongrel test
| * | maint: Remove bogus mongrel testMatt Robinson2010-12-021-6/+0
|/ / | | | | | | | | | | | | Why test that mongrel responds to daemonize? EVERYTHING responds to daemonize thanks to activesupport. Paired-with: Paul Berry
* | Merge branch 'ticket/2.6.next/5081' into 2.6.nextMatt Robinson2010-12-012-9/+0
|\ \ | |/ |/| | | | | * ticket/2.6.next/5081: [#5081] Revert "Fix #4349 - Parsing with ignoreimport=true was always loading site.pp"
| * [#5081] Revert "Fix #4349 - Parsing with ignoreimport=true was always ↵Matt Robinson2010-12-012-9/+0
|/ | | | | | | | | | | | | | | | | | | | loading site.pp" The fix for #4349 caused --parse-only not to detect syntax errors when --ignore-import was used by adding a return statement that bypassed the initial import: commit 760e418d254a8d2198d2c6eb466d783a5930ef47 def perform_initial_import + return if Puppet.settings[:ignoreimport] The problem that #4349 fixed was more generally fixed in commit 99c1019e1d3402ec8e476dc859d5aaef82ec4f69 for ticket #4798 so the return statement is no longer needed, so reverting the commit for #4349 does not reintroduce the problem of an import loop error when running puppet doc. Paired-with: Jesse Wolfe
* (#5304) Use internal_name rather than real_name for maillist providerNigel Kersten2010-12-011-5/+3
| | | | | | | | | | | 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. Modified by Markus as-per discussion with Nigel. Signed-off-by: Nigel Kersten <nigel@puppetlabs.com>
* Updated CHANGELOG and version for 2.6.4James Turnbull2010-12-022-1/+10
|
* Revert "(#5304) Use internal_name rather than real_name for maillist provider"James Turnbull2010-12-021-5/+6
| | | | This reverts commit 779fea867a9e23ad48cd877a88756cc5792e9e0c.
* Disable remote ralsh by defaultPaul Berry2010-12-022-2/+0
| | | | | | | Changed the default auth.conf so that accesses to "/resource" are no longer allowed. This means that to use "puppet resource -H" you will need to configure the target machine to enable access to the "/resource" URLs.
* (#5424) Ship auth.conf as part of installing from sourceNigel Kersten2010-12-021-7/+38
| | | | | | | Add --configdir which defaults to /etc/puppet Add --no-configs to suppress config file installation. We're only shipping auth.conf at this stage, but in the future we may start shipping other config files.
* (#5304) Use internal_name rather than real_name for maillist providerNigel Kersten2010-11-301-6/+5
| | | | | | | | | 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>
* Renamed Reductive to PuppetJames Turnbull2010-11-2922-24/+24
| | | | I swear I've done this before. *confused*
* Incremented CHANGELOG for 2.6.3James Turnbull2010-11-171-0/+16
|
* [#5322] (#5322) Remove spec file that adds little value and causes failuresMatt Robinson2010-11-161-533/+0
| | | | | | | | | | | | | | 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>
* Fix test failures that fixing #4726 exposed.Jesse Wolfe2010-11-163-11/+11
| | | | | | | | | 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.
* (#4726) Fix RRD legacy supportMatt Robinson2010-11-161-1/+1
| | | | | | | | 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>
* Fix for #4279 -- mount detection on HP-UXMarkus Roberts2010-11-162-2/+9
| | | | | This is based on the discussion on ticket, simplified slightly and with test adjustment.
* Fix for #5055 -- adding to_sym to Puppet::Node::EnvironmentMarkus Roberts2010-11-161-0/+4
| | | | | | 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).
* Fix for #5298 -- Collections need to do type lookupMarkus Roberts2010-11-162-1/+6
| | | | | | | | | | | | | 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.
* Step towards [5298] -- cleanup indentation, etc. in AST::CollectionMarkus Roberts2010-11-161-51/+33
| | | | My code smell routines bobbled this one, so I'm fixing it manually.
* Fixed #5287 - Schedule documentation is incorrectJames Turnbull2010-11-161-5/+5
|
* Fixed #5296 - test warnings messagesJames Turnbull2010-11-165-14/+14
|
* (#5297) Fix schedule tests that were missing stubs for Time.nowMatt Robinson2010-11-161-0/+4
| | | | Reviewed-by: Jesse Wolfe <jesse@puppetlabs.com>
* Fix for #5273 -- user resource constantly resetting password ageMarkus Roberts2010-11-162-4/+4
| | | | | | | The query methods for the newly added password age properties didn't have the same name as the properties, and thus the default retrieve method wan't finding them and never got the current value from the provider. They were therefore always seen as :absent and puppet always thought they needed to be set.
* Fix #5289 -- Bad copy/paste changes message on test failureMarkus Roberts2010-11-133-3/+5
| | | | | | | | | | In my fix for #4894 (commit a097b939ab52bafb681cf7c5dcaf11717add07e6) I made and tested the fix in one case and then copied most of it (all but a variable initialization, Doh!) to two other locations. This caused tests that would have failed with a socket-in-use error to fail with a different error rather than retrying. Also fixed the spelling of "simultaneous."
* Updated CHANGELOG for 2.6.3rc3James Turnbull2010-11-121-0/+29
|
* Fix for #4299 -- Don't require whichMarkus Roberts2010-11-1213-66/+25
| | | | | | We already had an internal implementation of which hiding under an assumed name (Puppet::Util.binary); this commit calls it out of hiding and uses it consisantly.
* Fix #5020 - Prefer finding node name from REST uri over certnameBrice Figureau2010-11-122-12/+17
| | | | | | | | | | | | | | | | | | | | | | This is a behavior change. Before this patch, we always used the currently connected node's certname to compile the catalog, despite the value of the catalog URI REST request. With this patch we now use the URI as the compiled node name. This is safe because the default auth.conf (and default inserted rules when no auth.conf is present) only allow the given connected node to compile its own catalog. But this also allows for greater flexibility with auth.conf. For instance it can be used by a monitoring system to check multiple nodes catalogs with only one certificate: path ~ ^/catalog/([^/]+)$ method find allow $1 allow monitoring-station.domain.com Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
* Fix for #4894 -- retry tests if port is in useMarkus Roberts2010-11-123-6/+28
| | | | | | If multiple processes are running the spec tests they may conflict trying to listen on a port. If this happens the test waits 0.1 seconds and retries for up to 100 times before marking the test pending due to too many conflicts.
* Fix for #4955 -- Race condition & memory leak in Puppet::UtilMarkus Roberts2010-11-127-54/+34
| | | | | | | | | | | | | | The Puppet::Util.sync method was not thread safe and also leaked memory. I'm not certain, but I believe the first is ironic and the second is merely a bug. This patch addresses the problem by 1) refactoring so the sync objects are never returned (and thus no one can cache a reference to one) 2) adding reference counting 3) deleting them when they are no longer needed 4) doing the thread safty dance. It wasn't the first (or even second) solution considered, but it's the one that I was able to make work in a way that I'm convinced is correct. Its main advantage is that it puts all the tricky bits in one place.
* Fix #4921 - race condition in Parser Functions creationBrice Figureau2010-11-122-2/+25
| | | | | | | The autoloading is not thread safe, which means two threads could both autoload the same function at the same time. Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
* Fix #5252 - line number mis-attribution during parsingBrice Figureau2010-11-112-5/+12
| | | | | | | | | | | | | | | It is a resurgence of #2366 that appeared because of the commit 8971d8. Before this commit, for associating documentation comments, we were preferring line numbers coming from the parser currently reducing rule, instead of the current lexer line number (which can be in advance of several tokens due to the nature of LALR parsers). We now merge the ast line number before fetching the comment from the lexer. Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
* Maint. fix for test broken by 00eedac5Markus Roberts2010-11-101-14/+5
| | | | | As per Nigel, this fixes the test broken by commit 00eedac5 in which a :combine was added in lib but the corresponding change was not made in the test.
* Fix for #2568 -- Add a dbconnections option to set AR pool sizeMarkus Roberts2010-11-103-0/+78
| | | | | The dbconnection option, if set to a positive integer, will be passed to active record as the connection pool size (pool).
* Maint. Removing code for which no CLA has been signedMarkus Roberts2010-11-104-33/+8
| | | | | Multiple attemps were made to contact the author of this code in order to obtain a Contributor Licence Agreement, but we were unable to do so.
* Reimplementation of functionality removed by prior commitMarkus Roberts2010-11-101-1/+9
| | | | | This commit implements the base path-to-source functionality and adds an (adapted) version of Matt's code on top of it.
* Refactor for CLAMarkus Roberts2010-11-101-13/+1
| | | | | | | | | | | This commit removes code contributed by Ryan McBride, an author we have been unable to contact to sign a Contributor License Agreement. It also removes code writen by Matt Robinson (a Puppet Labs employee) which only made sense in the context of the removed code. The code in question comes from these commits: 6ac36eb4 Matt Robinson 55a9009c Ryan McBride
* Fix #4923 - close process race when truncating existing fileBrice Figureau2010-11-103-16/+57
| | | | | | | | | | | | | | | | | | | | | Using File.open(file, "w") calls open(2) with O_CREAT|O_TRUNC which means when the file exists it is immediately truncated. But the file is not locked yet, so another process can either write or read to the file, leading to file corruption. The fix is to truncate only when the file is exclusively locked. This can be done on some operating system with O_EXLOCK open(2) flag. I chose the more portable option of: * open * flock * truncate * write * close It might also be good to flush and fsync the file after writing it, otherwise in case of crash an incomplete file can stay on disk. Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
* Puppet-load: better and safer error reportingBrice Figureau2010-11-101-1/+3
| | | | | | | In case of connection, dns or timeout error, puppet-load would not report the error correctly or could crash. Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
* Fix #5023 - puppet-load multiple nodes supportBrice Figureau2010-11-101-25/+59
| | | | | | | | | | | | This patch allows puppet-load to compile multiple nodes catalog. This is done by using multiple --node. Puppet-load will use round-robin to chose which nodes catalog to ask for a given simulated client. It is also possible to pass a directory of facts yaml file in which puppet-load will load given --node facts file. This can work only if #5020 is applied to the puppetmaster first. Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
* capture stderr from exec resourcesNigel Kersten2010-11-101-1/+1
|
* (#4573) FreeBSD service provider now supports versions <7 and >8Nick Lewis2010-11-102-1/+54
| | | | | | | | | | | | Running "/etc/rc.d/SERVICE rcvar" outputs different formats for different versions of FreeBSD. This patch adds support for those formats, as well as tests. Based on patches from: o Joost van Beurden o Russell Jackson Paired-With: Matt Robinson
* Fix #3808 - puppetdoc should use --force-update only if RDoc supports itBrice Figureau2010-11-102-5/+14
| | | | | | This should allow to run puppetdoc on ruby 1.8.5. Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
* [#4813] Remove dead code from puppet/rails/host.rbMatt Robinson2010-11-101-72/+0
| | | | | | | | | | | | | | | def self.clean – became orphaned in commit 28cee40689440388994a4768bd301ae32c8ecc05 def self.store – became orphaned in commit 863c50b1273a7fa48d74fb74948938214b45967c def fact – was added as a helper method for unit tests in commit 9f4870637ce57d548d23c0b3330200014327c268. The test file that used this method was removed in commit 93246c0c70796a606fc8c05b51e1feb09c94e377 def update_connect_time – Not sure when this was ever used. I also ran a client master storeconfigs run a few times and didn’t see any problems, so I’m pretty sure deleting these methods is safe.
* Fix #4911 - Do not generate doc for standard RDoc parser generated objectBrice Figureau2010-11-101-0/+6
| | | | | | | | | RDoc has some standard parsers for .c,.cc or fortran files (don't ask why). Unfortunately our html generator doesn't support the data structures generated by those parsers and we were bombing on unknown methods. This patch makes sure we generate html only for our own top level objects. Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
* Fix #5127 - error when accessing array elementsBrice Figureau2010-11-102-2/+52
| | | | | | | | | | | Accesing an array with an integer index (ie $array[1]) is producing a ruby error: can't convert String into Integer This is because the array index is not properly converted to an number before the array element lookup is performed. Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>