summaryrefslogtreecommitdiffstats
path: root/lib/puppet/parser
Commit message (Collapse)AuthorAgeFilesLines
* Requiring puppet/rails in the interpreter before Rails.initluke2006-12-171-0/+1
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1945 980ebf18-57e1-0310-9a29-db15c13687c0
* Go back to restype and remove STI classes, they were more trouble than they ↵shadoi2006-12-151-3/+3
| | | | | | were worth. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1940 980ebf18-57e1-0310-9a29-db15c13687c0
* Changing some of the error output. This gets rid of the duplicated ↵luke2006-12-151-7/+3
| | | | | | information that occurred when definitions or nodes were duplicately defined, and it tightens the error output a bit. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1938 980ebf18-57e1-0310-9a29-db15c13687c0
* New rails stuff redux.shadoi2006-12-144-26/+26
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1925 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing painfully difficult to find bug in defining exported resourcesluke2006-12-141-2/+9
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1922 980ebf18-57e1-0310-9a29-db15c13687c0
* Working some on the export/collect problem. It actually works now, but ↵luke2006-12-123-8/+35
| | | | | | there are not yet sufficient tests for it, so I will leave the bug open until we have got the new work in place. I also added a "rails" feature, so I do not have to keep testing whether ActiveRecord is defined. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1911 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing #342. Classes needed to have their namespaces set to their fully ↵luke2006-11-171-1/+5
| | | | | | qualified names, so that contained code and definitions looked for definitions starting with that fq name. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1890 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing configuration storage -- there was a check being done that caused ↵luke2006-11-152-11/+12
| | | | | | false values to get converted to nil values, which failed in the database git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1885 980ebf18-57e1-0310-9a29-db15c13687c0
* Temporarily reverting all of the recent rails work so that I can release 0.20.1luke2006-11-133-12/+12
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1873 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing #339, and the bigger problem it concealed. Metaparams are now only ↵luke2006-11-132-0/+8
| | | | | | added to resources that do not explicitly set them. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1869 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing #326 -- parseonly now just creates a simple Master without opening a portluke2006-11-092-6/+6
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1849 980ebf18-57e1-0310-9a29-db15c13687c0
* Slightly more doc updatesluke2006-11-091-15/+1
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1846 980ebf18-57e1-0310-9a29-db15c13687c0
* Small fixes here and there. The rails changes needs to be pushed through ↵luke2006-11-092-18/+76
| | | | | | the collection code, so I am committing so Blake can take a look at that. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1844 980ebf18-57e1-0310-9a29-db15c13687c0
* Rails stuff part 1shadoi2006-11-092-11/+11
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1837 980ebf18-57e1-0310-9a29-db15c13687c0
* Merging the code over from the oscar branch. I will now be doing all ↵luke2006-11-088-44/+44
| | | | | | 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
* Changing the realize() function to be just syntactic sugar for a collection ↵luke2006-10-182-14/+35
| | | | | | -- it literally creates a collector object now. The benefit of this is that it is late-binding, so file order does not affect whether a resource is available. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1810 980ebf18-57e1-0310-9a29-db15c13687c0
* Adding a "realize" function that can be used to make one or more resource ↵luke2006-10-183-528/+597
| | | | | | non-virtual. It is just syntactic sugar for a collection by title. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1808 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing virtual object collection. I apparently broke it when I added rails ↵luke2006-10-183-10/+13
| | | | | | collection back, and I never created any end-to-end tests. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1805 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing gennode; it was not actually adding the class code to the generated node.luke2006-10-161-13/+19
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1792 980ebf18-57e1-0310-9a29-db15c13687c0
* adding explicit load of ast/branch to its subclassesluke2006-10-153-0/+6
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1780 980ebf18-57e1-0310-9a29-db15c13687c0
* Adding modified patch from #256 -- apt now uses "responsefile" for the ↵luke2006-10-091-1/+1
| | | | | | preseed file. This is untested, though, since I do not know how to test it. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1753 980ebf18-57e1-0310-9a29-db15c13687c0
* Many, many, many performance improvements in the compiler (I hope). I did ↵luke2006-10-0610-176/+181
| | | | | | not change functionality anywhere, but I did some profiling and significantly reduced the runtime of many methods, and especially focused on some key methods that run many times. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1739 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing weird case where the default node is in one node source and the real ↵luke2006-10-051-8/+14
| | | | | | node is in a different one git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1734 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing ldap nodes -- they were always returning true because i was returning ↵luke2006-10-051-1/+5
| | | | | | an empty array for missing nodes. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1733 980ebf18-57e1-0310-9a29-db15c13687c0
* Removing some left-over debuggingluke2006-10-041-4/+0
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1727 980ebf18-57e1-0310-9a29-db15c13687c0
* Merging the changes from the override-refactor branch. This is a ↵luke2006-10-0432-3668/+3781
| | | | | | significant rewrite of the parser, but it has little affect on the rest of the code tree. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1726 980ebf18-57e1-0310-9a29-db15c13687c0
* - New type Notify for sending client-side log messagesajax2006-09-291-0/+7
| | | | | | | | | | | type.rb type/notify.rb - Added server-side functions named after each of the syslog log levels (debug, info, notice, warning, err, crit, alert, and emerg) parser/functions.rb git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1707 980ebf18-57e1-0310-9a29-db15c13687c0
* adding an extra make target for debugging, rather than defaulting to always ↵luke2006-09-202-2/+5
| | | | | | creating the debug file git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1637 980ebf18-57e1-0310-9a29-db15c13687c0
* Trying to fix a bug where files other than site.pp do not get noticed for ↵luke2006-09-193-54/+41
| | | | | | reparsing git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1621 980ebf18-57e1-0310-9a29-db15c13687c0
* Using the "trace" configuration parameter to determine whether a stack trace ↵luke2006-09-1512-23/+17
| | | | | | should be printed, rather than just using "debug". I added the param a little while ago and was using it internally in Puppet::DevError, but I just now went through the whole configuration and switched to using it. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1613 980ebf18-57e1-0310-9a29-db15c13687c0
* Reverting the work done in [1605] and [1606]. I have added it as a patch in ↵luke2006-09-155-765/+554
| | | | | | #271. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1610 980ebf18-57e1-0310-9a29-db15c13687c0
* Adding the feature from #259. I had to rework the Scope#lookupvar a bit, ↵luke2006-09-151-4/+14
| | | | | | but everything now works as expected when variables are either undefined or set to empty strings. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1609 980ebf18-57e1-0310-9a29-db15c13687c0
* This commit adds two important features (but which probably were notluke2006-09-155-554/+765
| | | | | | | | | | | | | | | | | | | | | | | worth the priority I suddenly placed on them). First, it adds search paths as I originally requested in #114. There is now a 'lib' setting, which can be used to tell Puppet where to find manifests. Any file you tell Puppet to parse will have its directory automatically added to the lib path. Also, Puppet will check the PUPPETLIB environment variable for further directories to search. Second, it converts the 'import' mechanism into a normal function, which means that you can now use variables and what-have-you in it. Of course, this function uses the lib mechanism. This is something that's always bothered me about the language, and having it fixed means you can do simple things like have custom code in the top scope for each operating system and then do "import os/$operatingsystem" to evaluate that code. Without this, you would either need a huge case statement or the code would need to be in a class, which often isn't sufficient. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1605 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing the interpreter to nodesearch across all listed names, just like is ↵luke2006-09-131-11/+13
| | | | | | done in the manifests. Also fixing a comment in type.rb git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1586 980ebf18-57e1-0310-9a29-db15c13687c0
* Renaming parsedfile to loadedfile, which makes much more sense and reduces ↵luke2006-09-033-7/+7
| | | | | | some naming conflicts git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1544 980ebf18-57e1-0310-9a29-db15c13687c0
* Adding eat-last-line support in ERBluke2006-09-031-1/+1
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1542 980ebf18-57e1-0310-9a29-db15c13687c0
* downgrading the template interpolation messageluke2006-08-301-1/+1
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1517 980ebf18-57e1-0310-9a29-db15c13687c0
* Adding automatic stacktrace printing to deverror. I need to go through and ↵luke2006-08-291-4/+1
| | | | | | remove the redundant puts in the rest of the code, but I need this now for some client debugging git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1515 980ebf18-57e1-0310-9a29-db15c13687c0
* Tracking down some weird bugs that managed to creep into the parser. I ↵luke2006-08-286-254/+267
| | | | | | expect that the main ones were a result of the If support. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1494 980ebf18-57e1-0310-9a29-db15c13687c0
* Committing definition inheritance. I have not yet written tests yet, but my ↵luke2006-08-2210-272/+415
| | | | | | last commit pretty seriously broke some things without me realizing it, so I wanted to get this in. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1484 980ebf18-57e1-0310-9a29-db15c13687c0
* Adding "if/else" constructs. No operators, no elsif, but it is a good ↵luke2006-08-227-1098/+796
| | | | | | start, anyway. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1483 980ebf18-57e1-0310-9a29-db15c13687c0
* Function autoloading now works as requested in #214.luke2006-08-221-3/+19
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1482 980ebf18-57e1-0310-9a29-db15c13687c0
* Adding warnings and error throwing for #218 -- metaparams in prototypes are ↵luke2006-08-211-1/+29
| | | | | | treated specially. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1481 980ebf18-57e1-0310-9a29-db15c13687c0
* Committing changes that require dollar signs in prototypesluke2006-08-144-195/+280
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1468 980ebf18-57e1-0310-9a29-db15c13687c0
* First round of bugfixes in preparation for 0.18.4luke2006-07-211-11/+4
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1421 980ebf18-57e1-0310-9a29-db15c13687c0
* Apparently objects were legal rvalues, which does not make any sense. Fixed ↵luke2006-07-212-302/+292
| | | | | | this, and added a test verify. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1418 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing bug in scope/interpreter where nodes found in ldap must have parent ↵luke2006-07-182-1/+5
| | | | | | nodes. The problem was that the the scope was using the presence of a parent node to determine whether a node was found. Instead I added a flag in the arguments to "Scope#evaluate" to mark nodes as found. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1401 980ebf18-57e1-0310-9a29-db15c13687c0
* Adding a unit test for plain "nodesearch"luke2006-07-181-0/+10
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1400 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing templating so it immediately fails when a variable is not found, as ↵luke2006-07-111-4/+19
| | | | | | opposed to passing up the method_missing heirarchy, which was causing a nasty memory leak and some kind of weird, long-running search git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1389 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing templating bug that can result in what looks like an infinite loop, ↵luke2006-07-111-1/+7
| | | | | | and changing default timeout to 2 minutes instead of 30 seconds git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1385 980ebf18-57e1-0310-9a29-db15c13687c0