summaryrefslogtreecommitdiffstats
path: root/bin/puppet
Commit message (Collapse)AuthorAgeFilesLines
* [#4196] Move the docs into the source directory structureJesse Wolfe2010-07-091-69/+0
| | | | | | Since it is no longer possible to find the running executable from the call stack, docs have to be kept somewhere in the source tree. Of course, at this point, we shouldn't be using RDoc::Usage at all.
* feature #2276 Single Executable: CommandLine can be instantiatedJesse Wolfe2010-02-171-17/+1
| | | | | | refactor CommandLine to be an object Signed-off-by: Jesse Wolfe <jes5199@gmail.com>
* feature #2276 Single Executable: subcommand methodJesse Wolfe2010-02-171-6/+6
| | | | | | Extract the logic to determine the subcommand name into a method. Signed-off-by: Jesse Wolfe <jes5199@gmail.com>
* feature #2276 Single Executable: help for applyJesse Wolfe2010-02-171-0/+69
| | | | | | restore the help text for the apply command Signed-off-by: Jesse Wolfe <jes5199@gmail.com>
* feature #2276 Single Executable: legacy settingsJesse Wolfe2010-02-171-6/+6
| | | | | | | | Puppet's defaults change depending on which command invokes them. This patch makes sure that we use the maintain the current behavior. This is a temporary fix until I implement feature #2935. Signed-off-by: Jesse Wolfe <jes5199@gmail.com>
* Fix #3552 single executable should display usageJesse Wolfe2010-02-171-6/+3
| | | | | | | | | Added some tests to make the single executable command behavior explicit. Added logic to display the usage message if we're on a tty and no arguments are passed. Signed-off-by: Jesse Wolfe <jes5199@gmail.com>
* Fixing 'puppet' to directly run manifestsLuke Kanies2010-04-091-1/+6
| | | | | | | | | | | | It was previously requiring that you specify an application name, thus breaking the ability to easily run commands like: puppet ~/bin/test.pp Or even having '#/usr/bin/env puppet --verbose' in the first line of an executable script and having that work. Signed-off-by: Luke Kanies <luke@puppetlabs.com>
* Moving puppet back to binLuke Kanies2010-04-091-0/+18
| | | | Signed-off-by: Luke Kanies <luke@puppetlabs.com>
* Renaming the old puppet executableRein Henrichs2010-02-171-71/+0
|
* Signed-off-by: Eric Sorenson <ahpook@gmail.com>Eric Sorenson2009-08-011-1/+1
| | | | | | | | | Apologies if this violates the no-trivial-patches rule. I am getting used to git and this seemed like a harmless place to start. Documentation fix for help text, configuration reference URL is 404 now. Updated to equivalent page on wiki, fixes #2466 Signed-off-by: Eric Sorenson <ahpook@gmail.com>
* Fixed #2052 - Added -e option to puppet --help outputJames Turnbull2009-06-121-1/+4
|
* Move puppet to the Application Controller paradigmBrice Figureau2009-02-161-189/+2
| | | | Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
* Fixing tests broken during the #1405 fix.Luke Kanies2009-02-061-1/+4
| | | | | | Most of these were small changes, like moved methods. Signed-off-by: Luke Kanies <luke@madstop.com>
* Renaming Puppet::Node::Catalog to Puppet::Resource::CatalogLuke Kanies2008-12-181-1/+1
| | | | Signed-off-by: Luke Kanies <luke@madstop.com>
* Fixed #1633 - Added support for --detailed-exits to bin/puppetLuke Kanies2008-10-081-3/+23
| | | | | | | which causes puppet to produce different exit codes depending on whether there were changes or failures in the transaction. Signed-off-by: Luke Kanies <luke@madstop.com>
* Fixed #1628 - Changed node search to use certname rather than Facter hostnameJames Turnbull2008-10-031-3/+4
|
* Updated puppet binary documentationJames Turnbull2008-10-031-5/+5
|
* Fixing #1408 - --loadclasses works again.Luke Kanies2008-07-101-1/+1
| | | | | | | | | The problem was that the mechanism I was using for passing the node to the compiler was conflicting with the Indirector::Request's method of handling node authentication. Signed-off-by: Luke Kanies <luke@madstop.com>
* Fixed 1240 - puppet will function more like puppetd if graphingLuke Kanies2008-07-031-0/+2
| | | | or reporting are enabled.
* Fixed #1371 - Updated bin/puppet to use Node.findJames Turnbull2008-06-171-1/+1
|
* issue 1183Andrew Shafer2008-06-161-2/+3
| | | | | | | | | | | | | | | Added environment awareness to --configprint Pulled the logic for --configprint --genconfig and --genmanifest out of puppet.rb Put the logic in lib/puppet/util/settings.rb and refactored it a bit Added specs for the behavior Reformated the whole spec file to use nested describe Added the new method to the executables The old behavior should be preserved, except for the env is now used
* Fixing the executables to use the new indirection api.Luke Kanies2008-04-081-1/+1
|
* Fixed #1073 - moved show_diff and other logic post config parseJames Turnbull2008-02-211-8/+8
|
* Fixed #968 again, this time with tests -- parseonly works,Luke Kanies2008-02-131-2/+10
| | | | | including not compiling the configurations, and also storeconfigs is no longer required during parse-testing.
* Further fixes toward #965. Turned out that the previous fixLuke Kanies2007-12-211-0/+2
| | | | | | | caused other problems. This whole thing will hopefully get *drastically* easier once we get rid of global resources.
* Fixing parseonly with a modified version of jay'sLuke Kanies2007-12-191-0/+2
| | | | patch from #968.
* Renaming 'configuration' to 'catalog', fixing #954.Luke Kanies2007-12-111-5/+5
|
* Fixing #951 -- external nodes work again, but you have toLuke Kanies2007-12-101-6/+2
| | | | set the 'node_terminus' setting to 'exec'.
* Reorganizing the file structure for indirection terminus types.Luke Kanies2007-10-151-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Previously, for example, the configuration terminus that was a subclass of 'code' would have been stored at lib/puppet/indirector/code/configuration and would have had to have been named 'configuration'. Now, the subclass can be named however the author prefers, and it must be stored at lib/puppet/indirector/configuration/<name>.rb, where <name> is the name you've chosen for the terminus type. The name only matters insomuch as it is used to load the file from disk and find the appropriate class when asked. The additional restriction is that the class constant for the terminus type must have its name as the last word, and the indirection must be the second to last word. Thus, in our example, we can choose any class constant that ends with Configuration::Code; given that there's only one Configuration class at this point, it makes the most sense to define the class as Puppet::Node::Configuration::Code. This is somewhat awkward, because of the class's location on disk, but the only other real option is to autogenerate a Puppet::Indirector::Configuration class constant, which is, I think, uglier.
* All tests should now pass again.Luke Kanies2007-10-081-1/+1
| | | | | | | | | | | | | | This is the first real pass towards using caching. The `puppet` executable actually uses the indirection work, instead of handlers and such (and man! is it cleaner). Most of this work was a result of trying to get the client-side story working, with correct yaml caching of configurations, which means this commit also covers converting configurations to yaml, which was a much bigger PITA than it needed to be. I still need to write integration tests, and I also need to cover the server-side story of a normal configuration retrieval.
* Adding a :code setting for specifying code to runLuke Kanies2007-10-051-1/+1
| | | | | | | | instead of a manifest, and removing all of the ambiguity around whether an interpreter gets its own file specified or uses the central setting. Most of the changes are around fixing existing tests to use this new system.
* This commit is focused on getting the 'puppet' executableLuke Kanies2007-10-051-34/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | to work. As a result, it involves a lot of integration-level testing, and a lot of small design changes to make the code actually work. In particular, indirections can now have default termini, so that configurations and facts default to their code terminus Also, I've removed the ability to manually control whether ast nodes are used. I might need to add it back in later, but if so it will be in the form of a global setting, rather than the previous system of passing it through 10 different classes. Instead, the parser detects whether there are AST nodes defined and requires them if so or ignores them if not. About 75 tests are still failing in the main set of tests, but it's going to be a long slog to get them working -- there are significant design issues around them, as most of the failures are a result of tests trying to emulate both the client and server sides of a connection, which normally would have different fact termini but in this case must have the same terminus just because they're in the same process and are global. The next step, then, is to figure that process out, thus finding a way to make this all work.
* Fixing #814 -- when files are missing, the exceptions shouldLuke Kanies2007-10-031-3/+3
| | | | now be more reasonable.
* Renaming the 'Puppet::Util::Config' class toLuke Kanies2007-09-221-3/+3
| | | | | | | 'Puppet::Util::Settings'. This is to clear up confusion caused by the fact that we now have a 'Configuration' class to model host configurations, or any set of resources as a "configuration".
* This is basically another intermediate commit. I feel likeLuke Kanies2007-09-171-2/+2
| | | | | | | | | | | | | | | | | | | | I've gone too far down the rabbit hole to turn back now, but the code is clearly getting more centralized around the Configuration class, which is the goal. Things are currently a bit muddy between recursion, dynamic resource generation, transactions, and the configuration, and I don't expect to be able to clear it up much until we rewrite all of the tests for the Transaction class, since that is when we'll actually be setting its behaviour. At this point, Files (which are currently the only resources that generate other resources) are responsible for adding their edges to the relationship graph. This puts them knowing more than I would like about how the relationship graph works, but it'll have to do for now. There are still failing tests, but files seem to work again. Now to go through the rest of the tests and make them work.
* Fixing #806. Resources correctly look up their fully qualified definition ↵Luke Kanies2007-09-061-1/+5
| | | | type, just like resource references do, which causes the resource and reference to again agree on the full name of a given defined type.
* Adding support for providing a diff when files are being changed. Currently ↵Luke Kanies2007-08-271-0/+5
| | | | uses a local diff binary, but could easily be changed to use the ruby diff/lcs library. Modified puppet and puppetd to automatically show file diffs when in noop mode, but can otherwise be enabled using --show_diff. This only works when running interactively, because the diffs are printed on stdout.
* Fixing #206 and #422. Executables will still look for the deprecated config ↵luke2007-05-061-0/+2
| | | | | | files and load them using the old parse method, but they now prefer a single configuration file, and files can set parameters (owner, mode, group) in brackets on the same line. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2464 980ebf18-57e1-0310-9a29-db15c13687c0
* Merging the webserver_portability branch from version 2182 to version 2258.luke2007-03-061-3/+3
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2259 980ebf18-57e1-0310-9a29-db15c13687c0
* Moving all of the client and server code into a single network/ directory. ↵luke2007-02-081-4/+4
| | | | | | In other words, more code structure cleanup. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2179 980ebf18-57e1-0310-9a29-db15c13687c0
* Moving some of the stand-alone classes into the util/ subdirectory, to clean ↵luke2007-02-071-4/+4
| | | | | | up the top-level namespace a bit. This is a lot of file modifications, but most of them just change class names and file paths. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2178 980ebf18-57e1-0310-9a29-db15c13687c0
* Puppet can now read files on stdin. This means you can put "#!/usr/bin/env ↵luke2007-01-301-1/+5
| | | | | | puppet" in the first line of a puppet manifest and then execute the manifest normally. Yay! git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2130 980ebf18-57e1-0310-9a29-db15c13687c0
* updating docs with new location for reference infoluke2007-01-221-1/+1
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2074 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing a few testing bugs that have crept in, and fixing a self-reference ↵luke2007-01-051-1/+1
| | | | | | problem when configuring, graphing, and setting graphdir manually. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2052 980ebf18-57e1-0310-9a29-db15c13687c0
* Using Puppet.settraps in puppet executable, instead of old ad-hoc code.luke2007-01-041-10/+1
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2046 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing #346 -- on some scripts I accidentally used "feature" instead of ↵luke2006-11-161-1/+1
| | | | | | "features" git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1886 980ebf18-57e1-0310-9a29-db15c13687c0
* Merging the code over from the oscar branch. I will now be doing all ↵luke2006-11-081-12/+1
| | | | | | development in the trunk again, except for larger changes, which will still get their own branch. This is a merge of the changes from revision 1826 to revision 1834. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1835 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing #301 -- s/logfile/logdest/gluke2006-10-091-4/+8
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1748 980ebf18-57e1-0310-9a29-db15c13687c0
* Fix trac #282 (Change URL to configref, mention --genconfig)lutter2006-09-191-1/+5
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1630 980ebf18-57e1-0310-9a29-db15c13687c0
* Specifically rescuing Exception, since apparently the default does not ↵luke2006-09-151-1/+1
| | | | | | rescue LoadErrors and everything else git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1604 980ebf18-57e1-0310-9a29-db15c13687c0