summaryrefslogtreecommitdiffstats
path: root/lib/puppet/parser
Commit message (Collapse)AuthorAgeFilesLines
* Changing the setdefaults input format somewhat. It is always a hash of some ↵luke2006-03-012-11/+11
| | | | | | kind now. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@962 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing bug #60. Converting nodes to use types everywhere instead of names, ↵luke2006-02-284-147/+276
| | | | | | and adding a localobjectable to keep track of what parameters have been defined locally. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@957 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing #64; multiple class definitions in the same scope is now an error, ↵luke2006-02-271-1/+7
| | | | | | although using the same class name in different scopes is not an error. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@956 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing bug #73; node names now appear only once in the pathluke2006-02-273-6/+20
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@955 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing bug #75, providing support for unnecessary end commas.luke2006-02-272-118/+128
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@954 980ebf18-57e1-0310-9a29-db15c13687c0
* Removing all of the autoname codeluke2006-02-273-33/+3
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@953 980ebf18-57e1-0310-9a29-db15c13687c0
* Mostly, this is a refactoring commit. There is one significant new feature,luke2006-02-2721-162/+330
| | | | | | | | | | | | | | | | | though: overrides now only work within a class heirarchy, which is to say that a subclass can override an element in a base class, but a child scope cannot otherwise override an element in a base scope. I've also done a good bit of refactoring, though; notably, AST#evaluate now takes named arguments, and I changed the 'name' parameter to 'type' in all of the Component classes (this was all internal, but was confusing as it was). I also removed the need for the autonaming stuff -- it's now acceptable for components not to have names, and everything behaves correctly. I haven't yet removed the autoname code, though; I'll do that on the next commit. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@952 980ebf18-57e1-0310-9a29-db15c13687c0
* Switching setclass to use object_ids instead of class names, and adding some ↵luke2006-02-272-8/+12
| | | | | | comments. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@951 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing scopes and AST so that definitions and classes are looked for in the ↵luke2006-02-274-90/+75
| | | | | | scopes, instead of in a global list git-svn-id: https://reductivelabs.com/svn/puppet/trunk@950 980ebf18-57e1-0310-9a29-db15c13687c0
* Generate an error if the pattern for an import statement matches no file.lutter2006-02-232-22/+32
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@928 980ebf18-57e1-0310-9a29-db15c13687c0
* Fix failure of test_importglobbing in test/parser/parser.rblutter2006-02-222-24/+44
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@925 980ebf18-57e1-0310-9a29-db15c13687c0
* Adding single-quote syntactical elementluke2006-02-164-342/+372
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@923 980ebf18-57e1-0310-9a29-db15c13687c0
* Changing transactions to be one-stage instead of two, and changing most of ↵luke2006-02-162-2/+0
| | | | | | the type classes to use "obj[:name]" instead of "obj.name" where appropriate, because "obj.name" might be a symbolic name (e.g., File.unlink(file.name) will not do what you want if file.name == "sshdconfig" but file[:path] == "/etc/ssh/sshd_config") git-svn-id: https://reductivelabs.com/svn/puppet/trunk@922 980ebf18-57e1-0310-9a29-db15c13687c0
* Changed the parsedtype definition of exists(), and fixed a few smaller bugs. ↵luke2006-02-151-1/+5
| | | | | | Last code commit before 0.13.2 git-svn-id: https://reductivelabs.com/svn/puppet/trunk@915 980ebf18-57e1-0310-9a29-db15c13687c0
* Committing the initial ldap support -- puppet can now look up node ↵luke2006-02-143-6/+168
| | | | | | configurations in ldap. The test scripts currently only work on my home network. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@909 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing some problems with cron tab management, and creating ↵luke2006-02-131-0/+3
| | | | | | Puppet::Util.{u,g}id methods. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@898 980ebf18-57e1-0310-9a29-db15c13687c0
* Making the language name a real alias. Now all objects in Puppet support ↵luke2006-02-102-2/+3
| | | | | | specifying both the name and the namevar, or just a name and having the namevar set. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@896 980ebf18-57e1-0310-9a29-db15c13687c0
* replacing all occurences of "is_a?" in the parser with "instance_of?"luke2006-02-082-46/+46
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@879 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing bug that occurs with only one argumentluke2006-02-083-7/+7
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@878 980ebf18-57e1-0310-9a29-db15c13687c0
* Configuration parameters now require (and have) descriptions, and a set of ↵luke2006-02-072-3/+5
| | | | | | configuration parameters can be converted to a configuration file, a manifest, or a component. All I have to do now is integrate them into the executables. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@872 980ebf18-57e1-0310-9a29-db15c13687c0
* Committing both the finalization of the config code, plus all of the code ↵luke2006-02-079-38/+82
| | | | | | necessary to get basic isomorphism from code to transportables and back. Mostly keyword and autoname stuff. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@871 980ebf18-57e1-0310-9a29-db15c13687c0
* Fix snippet_componentmetaparams testlutter2006-02-071-1/+1
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@870 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing class storage -- it was not working for nodescopesluke2006-01-302-15/+19
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@858 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing a small checksumming bug, reorganizing the client stuff a bit, and ↵luke2006-01-181-4/+22
| | | | | | adding freshness checking for the configuration, so the config is recompiled every time nor is it downloaded unless it has been recompiled git-svn-id: https://reductivelabs.com/svn/puppet/trunk@845 980ebf18-57e1-0310-9a29-db15c13687c0
* Made lots of small changes, mostly to help usability but also fixed a couple ↵luke2006-01-1815-119/+111
| | | | | | of key bugs git-svn-id: https://reductivelabs.com/svn/puppet/trunk@841 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing most types to allow no statementsluke2006-01-182-210/+358
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@840 980ebf18-57e1-0310-9a29-db15c13687c0
* Moving ast classes into separate filesluke2006-01-1318-1442/+1496
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@825 980ebf18-57e1-0310-9a29-db15c13687c0
* Converting transport format to YAML instead of Marshal, and caching the file ↵luke2006-01-122-2/+17
| | | | | | in a YAML format, also. This required a significant rework of both Transportable classes. Lastly, I am also now caching the list of classes in a class file in /etc/puppet. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@816 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixed a couple of warnings, fixed a critical bug having to do with case ↵luke2006-01-123-7/+10
| | | | | | statements (where there is only one listed option), and did a couple of other cleanups. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@814 980ebf18-57e1-0310-9a29-db15c13687c0
* Adding "content" state to files, and string interpolation handles escaped ↵luke2006-01-121-1/+1
| | | | | | whitespace characters. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@813 980ebf18-57e1-0310-9a29-db15c13687c0
* Supporting puppetmasterd running as a non-root user, and doing some basic ↵luke2006-01-101-1/+3
| | | | | | message cleanup git-svn-id: https://reductivelabs.com/svn/puppet/trunk@798 980ebf18-57e1-0310-9a29-db15c13687c0
* Merging changes from the head of the rework1 branch, r 784luke2006-01-081-1/+1
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@787 980ebf18-57e1-0310-9a29-db15c13687c0
* Undoing the merge that happened in 785luke2006-01-071-1/+1
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@786 980ebf18-57e1-0310-9a29-db15c13687c0
* Merging in refactoring from version 774 into version 784luke2006-01-071-1/+1
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@785 980ebf18-57e1-0310-9a29-db15c13687c0
* removing "host" as a keyword; it was an alias for "node"luke2006-01-031-1/+0
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@760 980ebf18-57e1-0310-9a29-db15c13687c0
* removing ruby shebang at the top of all of the filesluke2005-11-231-3/+2
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@755 980ebf18-57e1-0310-9a29-db15c13687c0
* adding cfengine module, which required passing the cfengine classes all the ↵luke2005-11-172-2/+14
| | | | | | way through the stack to the scope git-svn-id: https://reductivelabs.com/svn/puppet/trunk@746 980ebf18-57e1-0310-9a29-db15c13687c0
* Adding "isomorphic?" method to classes, and testing for isomorphism before ↵luke2005-11-021-9/+14
| | | | | | throwing a conflict git-svn-id: https://reductivelabs.com/svn/puppet/trunk@741 980ebf18-57e1-0310-9a29-db15c13687c0
* Further progress towards the next release. Lots of small bugs fixed, the ↵luke2005-11-011-5/+3
| | | | | | paths look much better now, and Transportable is much cleaner. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@740 980ebf18-57e1-0310-9a29-db15c13687c0
* The language now verifies some resemblance to closurehood. I now only need ↵luke2005-10-302-42/+142
| | | | | | to fix the library to expect this behaviour. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@736 980ebf18-57e1-0310-9a29-db15c13687c0
* central logging is fully functional now, but it is painfully slow, so it is ↵luke2005-10-281-1/+1
| | | | | | disabled by default git-svn-id: https://reductivelabs.com/svn/puppet/trunk@733 980ebf18-57e1-0310-9a29-db15c13687c0
* Further small bug fixes towards running puppet on my networkluke2005-10-253-83/+62
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@729 980ebf18-57e1-0310-9a29-db15c13687c0
* The Puppet::Util.asuser function now works; had to slightly modify user.rb ↵luke2005-10-231-1/+1
| | | | | | to make checking work. In addition, exec.rb now takes advantage of it. I also decided to make a small change to type.rb -- validstates now only returns state names, not names and states. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@726 980ebf18-57e1-0310-9a29-db15c13687c0
* Made tweaks here and there to get it running better on my local network. I ↵luke2005-10-211-0/+7
| | | | | | am inches away from that happening. All tests pass. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@720 980ebf18-57e1-0310-9a29-db15c13687c0
* Adding some semantic tagging. It is not exactly full-featured yet, and it ↵luke2005-10-104-27/+111
| | | | | | is not used at all, but it was sufficient for some proof-of-concept stuff in preparation for the conference git-svn-id: https://reductivelabs.com/svn/puppet/trunk@716 980ebf18-57e1-0310-9a29-db15c13687c0
* adding tag support to scopes and the transportable classluke2005-10-042-10/+61
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@715 980ebf18-57e1-0310-9a29-db15c13687c0
* Many, many changes toward a completely functional system. The only current ↵luke2005-09-235-58/+75
| | | | | | problems with my home config are that apache's stupid init script does not do status and that packages are not working as non-root users (which makes sense). git-svn-id: https://reductivelabs.com/svn/puppet/trunk@703 980ebf18-57e1-0310-9a29-db15c13687c0
* Nodes now support inheritance, for better or for worse.luke2005-09-234-215/+249
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@701 980ebf18-57e1-0310-9a29-db15c13687c0
* The new "include" syntax works now.luke2005-09-226-467/+646
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@700 980ebf18-57e1-0310-9a29-db15c13687c0
* Okay, all tests pass again. The work done on nodes will take a little while ↵luke2005-09-222-29/+67
| | | | | | to clarify and such, but it should work pretty well. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@698 980ebf18-57e1-0310-9a29-db15c13687c0