summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
| | * | | maint: Fix inspect helpMatt Robinson2011-08-092-5/+8
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Running `puppet help inspect` did not result in help: Unable to find application 'inspect'. err: exit err: Try 'puppet help help help' for usage It turned out that the only reason applications were getting required so that their help could be found was the LegacyName conversion table in lib/puppet/util/command_line.rb:7. Inspect never had a legacy name, so the help system couldn't find it since it never got required. Now instead of checking for the class constant to see if the application has been loaded, we try to require the application and exit if it's not found. Reviewed-by: Nick Lewis <nick@puppetlabs.com>
| * | | Increment lib/puppet.rb VERSION stringMichael Stahnke2011-08-061-1/+1
| | | | | | | | | | | | | | | | Signed-off-by: Michael Stahnke <stahnma@puppetlabs.com>
| * | | Updated CHANGELOG for 2.7.3rc1Michael Stahnke2011-08-051-6/+60
| | | |
| * | | Merge branch '2.7.x' into 2.7rcMichael Stahnke2011-08-0592-355/+2486
| |\ \ \ | | | |/ | | |/|
| | * | Merge pull request #21 from ↵Nick Lewis2011-08-041-1/+1
| | |\ \ | | | | | | | | | | | | | | | | | | | | daniel-pittman/bug/2.7.x/4762-ensure-that-clients-on-the-moon-can-successfully-connect Bug/2.7.x/4762 ensure that clients on the moon can successfully connect
| | | * | (#4762) Ensure that clients on the moon can successfully connect.Daniel Pittman2011-08-041-1/+1
| | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, we only allowed Puppet Clients at a maximum distance of somewhere between 7,494 and 14,988 kilometers from the master, depending on the variance in local conditions. While this gave us good data security against hostile clients connecting from the dark side of the moon, real world testing shows the moon folks are likely to just take over a local staging host and attack that way. So, instead, allow clients sufficient time they should be comfortable able to connect to a master from the moon. We still refuse clients further out, like Mars, since it seems unlikely that Puppet management over that distance should work. We advise the manned Mars expedition to deploy a local Puppet Master to manage infrastructure in their base, and to watch out for the martians.
| | * | Add document outlining preferred contribution methodsJacob Helwig2011-08-021-0/+299
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have historically had the preferred contribution process on the Redmine wiki, however this is not obvious to people that don't already know it is there. By adding this document to the repository itself, it becomes much easier for new contributors to find what the preferred contribution methods are. By having the preferred contribution method in the repository also means that it becomes a "curated" document, which must go through the same submission/review process that other changes to the repositories go through. Reviewed-by: Nick Fagerlund <nick.fagerlund@puppetlabs.com> Reviewed-by: Nick Lewis <nick@puppetlabs.com>
| | * | Revert "Merge branch 'vcsrepo'"Jacob Helwig2011-08-027-763/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | vcsrepo is available in a module of its own, is missing tests, and goes against the long-term goal of moving "extra" types out of core puppet into modules (an example of this is the nagios types). This reverts commit 25b967559dfa39eb094008c7a3952c4ee885530b, reversing changes made to b87a1dea704ed981f2f0af728afac2c63e87b5a8. Reviewed-by: Michael Stahnke <mike@puppetlabs.com>
| | * | Merge branch '2.7rc' into 2.7.xMichael Stahnke2011-07-291-0/+4
| | |\ \
| | * \ \ Merge branch 'ticket/2.7.x/8704-fileserverconf_parse_errors' into 2.7.xMatt Robinson2011-07-292-0/+35
| | |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | * ticket/2.7.x/8704-fileserverconf_parse_errors: (#8704) Give better errors for invalid fileserver.conf
| | | * | | (#8704) Give better errors for invalid fileserver.confMatt Robinson2011-07-292-0/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If you tried to just put an allow or deny line in the fileserver.conf without a mount point, you got a really confusing error message: lib/puppet/network/handler/fileserver.rb:285:in `readconfig': undefined method `info' for nil:NilClass (NoMethodError) Now instead we give an error saying no mount point was specified. Reviewed-by: Josh Cooper <josh@puppetlabs.com>
| | * | | | Merge branch 'tickets/2.7.x/1886' into 2.7.xPieter van de Bruggen2011-07-282-112/+115
| | |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tickets/2.7.x/1886: (Maint.) Disable cleaning of storeconfigs.
| | | * | | | (Maint.) Disable cleaning of storeconfigs.Pieter van de Bruggen2011-07-282-112/+115
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This feature (and the corresponding tests) were causing intermittent failures which we were unable to trace. We will reintroduce this behavior when we can do so without test fragility. Reviewed-By: Matt Robinson
| | * | | | | (#8690) Accept 'global' options in Puppet FacesDaniel Pittman2011-07-282-1/+9
| | |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we introduced verification of options, we forgot to handle the case that global options from the Puppet settings system could be passed to the face. This, in turn, means that the system would fail if you used any of those. This remediates that, and now these work as expected. Reviewed-By: Pieter van de Bruggen <pieter@puppetlabs.com>
| | * | | | Merge branch 'tickets/2.7.x/1886' into 2.7.xPieter van de Bruggen2011-07-281-0/+2
| | |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tickets/2.7.x/1886: (Maint.) Fix spec failures related to leaking state.
| | | * | | | (Maint.) Fix spec failures related to leaking state.Pieter van de Bruggen2011-07-281-0/+2
| | |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `node clean` code has introduced a systematic change in state which is not uniformly protected against by the tests. As these order dependent failures arise, we should refactor the tests to be more robust. Reviewed-By: Matt Robinson
| | * | | | Merge branch 'feature/2.7.x/1886' into 2.7.xPieter van de Bruggen2011-07-289-37/+518
| | |\ \ \ \ | | | |/ / / | | |/| | | | | | | | | | | | | | | | | | | | | * feature/2.7.x/1886: (#1886) Clean up `node clean` for merge. Fix #1886 - Add node cleanup capability
| | | * | | (#1886) Clean up `node clean` for merge.Pieter van de Bruggen2011-07-285-138/+139
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This includes various style changes, and assorted fixes to testing. Paired-With: Matt Robinson
| | | * | | Fix #1886 - Add node cleanup capabilityPeter Meier2011-07-277-20/+500
| | |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Here is a changeset that adds a new action to the puppet node face. This application removes all traces of a node on the puppetmaster (including certs, cached facts and nodes, reports, and storedconfig entries). Furthermore it is capable of unexporting exported resources of a host so that consumers of these resources can remove the exported resources and we will safely remove the node from our infrastructure. Usage: puppet node clean [--unexport] <host> [<host2> ...] To achieve this we add different destroy methods to the different parts of the indirector. So for example for yaml indirections we already offer read access for the yaml, this changeset adds the destroy handler which only removes the yaml file for a request. This can be used to remove cached entries. This work is based on the initial work of Brice Figureau <brice-puppet@daysofwonder.com>
| * | | | Add document outlining preferred contribution methodsJacob Helwig2011-08-021-0/+299
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have historically had the preferred contribution process on the Redmine wiki, however this is not obvious to people that don't already know it is there. By adding this document to the repository itself, it becomes much easier for new contributors to find what the preferred contribution methods are. By having the preferred contribution method in the repository also means that it becomes a "curated" document, which must go through the same submission/review process that other changes to the repositories go through. Reviewed-by: Nick Fagerlund <nick.fagerlund@puppetlabs.com> Reviewed-by: Nick Lewis <nick@puppetlabs.com>
| * | | | Revert "Merge branch 'vcsrepo'"Jacob Helwig2011-08-027-763/+0
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | vcsrepo is available in a module of its own, is missing tests, and goes against the long-term goal of moving "extra" types out of core puppet into modules (an example of this is the nagios types). This reverts commit 25b967559dfa39eb094008c7a3952c4ee885530b, reversing changes made to b87a1dea704ed981f2f0af728afac2c63e87b5a8. Reviewed-by: Michael Stahnke <mike@puppetlabs.com>
| * | | Updating CHANGELOG for 2.7.2rc3Michael Stahnke2011-07-291-0/+4
| | | | | | | | | | | | | | | | Signed-off-by: Michael Stahnke <stahnma@puppetlabs.com>
* | | | Merge pull request #34 from nanliu/ticket/2.7.x/8814Daniel Pittman2011-08-121-1/+1
|\ \ \ \ | | | | | | | | | | (#8814) Update fqdn_rand for ruby 1.9.2 rand bug.
| * | | | (#8814) Update fqdn_rand for ruby 1.9.2 rand bug.Nan Liu2011-08-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ruby 1.9.2 does not accept a string for rand function, so rand('1') fails even though this works in Ruby 1.8.x and the string is implicitly converted to a number. We added to_i to avoid this bug.
* | | | | Merge pull request #23 from domcleal/tickets/master/5606Daniel Pittman2011-08-122-5/+56
|\ \ \ \ \ | | | | | | | | | | | | (#5606) Print Augeas' /augeas//error info to debug on save failure
| * | | | | (#5606) Print Augeas' /augeas//error info to debug on save failureDominic Cleal2011-08-072-3/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When saving fails, the contents of /augeas//error (for put_failed) are printed to the debug log. Should help users track down the issue without needing to replicate it with augtool.
| * | | | | (#8808) Fail Augeas resource when unable to save changesDominic Cleal2011-08-072-3/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Raise a failure when Augeas changes cannot be saved (due to invalid layout of the tree, permissions etc). Fixes a regression.
* | | | | | Stop trying to make config directories in Windows specsNick Lewis2011-08-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | FileSetting#to_resource had a provision to not attempt to manage files in /dev, which effectively stopped spec from trying to make their configuration directories in /dev/null. However, on Windows, the path turns into something like C:/dev/null, so the specs were still trying to manage their configuration directories when this wasn't desired or handled by the spec. Now, we also exclude management of C:/dev (or similar), to mimic the behavior on Windows. Because this isn't a standard path (and thus will not be used for anything else), there seems to be no harm in treating it as though it were really /dev. Reviewed-By: Josh Cooper <josh@puppetlabs.com>
* | | | | | Merge pull request #27 from ↵Nick Lewis2011-08-102-6/+41
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | ChaseMotorman/feature/master/8272-windows_service_support (#8272) Add missing tests for Windows service provider methods.
| * | | | | | (#8272) Add missing tests for Windows service provider methods.Cameron Thomas2011-08-102-6/+41
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added missing spec tests for Windows service provider methods: :stop, :enable, :disable, and :manual_start Refactored to match Nick's previous work. Reviewed By: Nick Lewis [nick@puppetlabs.com]
* | | | | | Merge pull request #25 from nicklewis/feature/master/windows-users-and-groupsCameron Thomas2011-08-107-0/+791
|\ \ \ \ \ \ | |/ / / / / |/| | | | | (#8408/8409) Windows user and group providers
| * | | | | (#8409) Add a default group provider for WindowsNick Lewis2011-08-102-0/+127
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This provider, windows_adsi, uses the Puppet::Util::ADSI module to manage groups. It can only manage group existence and memberships, but is fully functional in those regards. Based on work by: Joel Rosario <joel.r@.internal.directi.com> Based on work by: Cameron Thomas <cameron@puppetlabs.com> Reviewed-By: Matt Robinson <matt@puppetlabs.com>
| * | | | | (#8408) Add a default user provider for WindowsNick Lewis2011-08-102-0/+181
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This provider, windows_adsi, uses the Puppet::Util::ADSI module to manage users. It can currently only manage group memberships, comments, and home directories, which are the only fields that can be managed via ADSI. Based on work by: Joel Rosario <joel.r@.internal.directi.com> Based on work by: Cameron Thomas <cameron@puppetlabs.com> Reviewed-By: Matt Robinson <matt@puppetlabs.com>
| * | | | | (#8408/8409) Add a Windows ADSI helper moduleNick Lewis2011-08-093-0/+483
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This module (Puppet::Util::ADSI) provides access to Active Directory Services Interfaces, using win32ole. The base module has methods for generating resource URIs and connecting to ADSI. It also provides classes Puppet::Util::ADSI::User and Puppet::Util::ADSI::Group for managing Active Directory users and groups, along with their properties and group memberships. This will be used to implement the Windows ADSI user and group providers. Based on work by: Joel Rosario <joel.r@.internal.directi.com> Based on work by: Cameron Thomas <cameron@puppetlabs.com> Reviewed-By: Matt Robinson <matt@puppetlabs.com>
* | | | | Merge branch 'ticket/master/8663-windows-spec-tests'Josh Cooper2011-08-041-1/+2
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | * ticket/master/8663-windows-spec-tests: (#8663) Exclude exec timeout test on Windows
| * | | | | (#8663) Exclude exec timeout test on WindowsJosh Cooper2011-08-041-1/+2
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The exec provider is not yet supported for Windows and this test relies on /bin/sleep. And due to #8410 it attempts to execute the program named "sleep 1", with variations of "sleep 1".bat, etc. This test needs to be reworked for Windows when the exec provider is implemented. Reviewed-by: Nick Lewis <nick@puppetlabs.com>
* | | | | Merge branch 'ticket/master/8663-windows-spec-tests'Josh Cooper2011-08-041-1/+2
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | * ticket/master/8663-windows-spec-tests: (#8663) Exclude git rev-parse HEAD spec test on Windows
| * | | | | (#8663) Exclude git rev-parse HEAD spec test on WindowsJosh Cooper2011-08-041-1/+2
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When running spec/integration/parser/compiler_spec.rb, the git command passed to Puppet::Util.execute is an array containing a single string ["git rev-parse HEAD"]. On Unix, it calls Kernel.exec(*command), but on Windows it calls Process.create(:command_line =>command), which attempts to execute the program called "git rev-parse HEAD" and fails: CreateProcess() failed: The system cannot find the file specified. This commit marks the test as fails_on_windows, and will be re-enabled when #8410 is fixed. Reviewed-by: Nick Lewis <nick@puppetlabs.com>
* | | | | Merge branch 'master' of github.com:puppetlabs/puppetDominic Maraglia2011-08-03294-2520/+5196
|\| | | |
| * | | | Add document outlining preferred contribution methodsJacob Helwig2011-08-021-0/+299
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have historically had the preferred contribution process on the Redmine wiki, however this is not obvious to people that don't already know it is there. By adding this document to the repository itself, it becomes much easier for new contributors to find what the preferred contribution methods are. By having the preferred contribution method in the repository also means that it becomes a "curated" document, which must go through the same submission/review process that other changes to the repositories go through. Reviewed-by: Nick Fagerlund <nick.fagerlund@puppetlabs.com> Reviewed-by: Nick Lewis <nick@puppetlabs.com>
| * | | | Merge branch 'file-test-on-windows'Jacob Helwig2011-08-0213-257/+232
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * file-test-on-windows: Check for the appropriate permissions in File type tests on Windows Remove :fails_on_windows from file type tests that no longer fail on Windows Disable file bucket diffing tests on Windows Always put a slash between the checksum and path in filebucket URLs Treat Windows absolute paths as absolute paths Consolidate test logic determining if a registered file is in the temp directory Clarify logic and error messages when initializing Puppet::FileBucket::File Disable symlink related file tests on Windows
| | * | | | Check for the appropriate permissions in File type tests on WindowsJacob Helwig2011-08-021-6/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ruby's interface to the permissions on Windows does not map well to the *nix concept of User, Group, and Other. On Windows directories don't get the execute bit, and Ruby cannot manage group, and other via the standard chmod interfaces. Because of this, we no longer check that the execute bit is set on Windows, and use a permission set that will show differences if we fail to set the permissions on Windows. Reviewed-by: Nick Lewis <nick@puppetlabs.com>
| | * | | | Remove :fails_on_windows from file type tests that no longer fail on WindowsJacob Helwig2011-08-021-7/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With the previous changes to the file bucket and the handling of what is considered an absolute path, enough pieces have slid into place that the file type is now mostly working on Windows. Reviewed-by: Nick Lewis <nick@puppetlabs.com>
| | * | | | Disable file bucket diffing tests on WindowsJacob Helwig2011-08-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The diffing ability of the file bucket is purely master functionality, and not supported on Windows. Reviewed-by: Nick Lewis <nick@puppetlabs.com>
| | * | | | Always put a slash between the checksum and path in filebucket URLsJacob Helwig2011-08-022-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since absolute paths on Windows do not always start with /, we need to make sure that there is always a slash between the checksum and the path, or the drive letter will end up being considered as part of the checksum. On systems where absolute paths always start with /, the extra slash is removed by the parsing done to the constructed URL. Reviewed-by: Nick Lewis <nick@puppetlabs.com>
| | * | | | Treat Windows absolute paths as absolute pathsJacob Helwig2011-08-026-222/+192
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, we only considered files that matched the *nix concept of 'absolute' as being absolute paths. Since absolute paths on Windows look more like URLs with this world-view, we need to specifically look for the Windows absolute paths, and treat them as such. We will still treat *nix absolute paths as absolute on Windows, even though they are actually relative to the "current" drive. We do not currently limit which "style" of absolute path is allowed based on what the agent is. Reviewed-by: Nick Lewis <nick@puppetlabs.com>
| | * | | | Consolidate test logic determining if a registered file is in the temp directoryJacob Helwig2011-08-021-10/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, we were always using string comparisons, and hard-coded paths to temp locations on non-Windows platforms. This was problematic for a few reasons. We had to maintain a list of temp locations for the various platforms, and the string comparisons were unreliable on Windows, since paths have two string representations (the "short" name containing a ~ followed by a number, and the "full" name). By getting the current temp location using Dir.tempdir (the same mechanism our temp creation code uses), we no longer need to maintain the list of temp locations. Also, rather than doing string comparisons on file paths, we can use a combination of Pathname#ascend, and File.identical? to determine if the path registered as a temp file for deletion was actually created in the temp location. With this refactoring, the same code now works for both Windows, and non-Windows platforms. Reviewed-by: Nick Lewis <nick@puppetlabs.com>
| | * | | | Clarify logic and error messages when initializing Puppet::FileBucket::FileJacob Helwig2011-08-022-6/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rather than stating the logic as 'if !thing', the two checks done when initializing a new Puppet::FileBucket::File are now phrased as 'unless thing', which should lessen the likelihood of overlooking the '!'. We also now provide a reason for the ArgumentError being raised, which should help users of Puppet::FileBucket::File quickly figure out what is the problem when these exceptions are raised. In addition to updating the tests to look for these new error messages, we update the existing tests to specify which type of exception, and what message it should have, when something is raised. Reviewed-by: Nick Lewis <nick@puppetlabs.com>
| | * | | | Disable symlink related file tests on WindowsJacob Helwig2011-08-021-2/+2
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While Windows filesystems typically have support for symlinks (NTFS), there are no immediate plans to support symlinks on Windows. Reviewed-by: Nick Lewis <nick@puppetlabs.com>
| * | | | Merge branch 'ticket/master/8644-host-provider'Josh Cooper2011-07-294-5/+8
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | * ticket/master/8644-host-provider: (#8644) Host provider on Windows