summaryrefslogtreecommitdiffstats
path: root/lib
Commit message (Collapse)AuthorAgeFilesLines
* Fixed #3532 - Typo in lib/puppet/ssl/host.rbJames Turnbull2010-02-171-1/+1
| | | | Thanks to Jasper Lievisse Adriaanse for the fix.
* Updated version and CHANGELOG to 0.25.5rc1James Turnbull2010-02-171-1/+1
|
* Fixes #3460 - Makes Puppet FHS compliant by moving /var/puppet to ↵James Turnbull2010-02-172-2/+2
| | | | /var/lib/puppet
* Fix for #3101 (bug in MRI 1.8.7)Markus Roberts2010-02-171-1/+12
| | | | | | | | | | | Due to a bug in Ruby 1.8.7 net/http will attempt to close a connection that wasn't successfully opened (it's nil), first checking to see if the connection is already close, and thus raising a method missing exception. This bug causes error messages that are confusing / misleading. To get around this, we add a closed? method to nil such that a nil (unopened) connection is always considered closed, allowing the real problem to be reported.
* Fixes #3419. OS X 10.6 Ruby doesn't set supplementary groupsNigel Kersten2010-02-171-2/+26
|
* Revert the guts of #2890Markus Roberts2010-02-174-32/+40
| | | | | | | | | | This patch reverts the semantically significant parts of #2890 due to the issues discussed on #3360 (security concerns when used with autosign, inconsistency between REST & XMLRPC semantics) but leaves the semantically neutral changes (code cleanup, added tests) in place. This patch is intended for 0.25.x, but may also be applied as a step in the resolution of #3450 (refactored #2890, add "remove_certs" flag) in Rolwf.
* Fail gracefully on packages that don't have the HOMEPAGE variable set (e.g. ↵Gábor Vészi2010-02-171-1/+1
| | | | dev-lang/php).
* Fixed #3443 - Typo in mount typeJames Turnbull2010-02-171-2/+3
|
* Fixes #3135 - darwin doesn't support 'mount -o remount'James Turnbull2010-02-171-1/+2
| | | | Thanks for Eric Sorenson for the patch.
* Adding :catalog_terminus settingLuke Kanies2010-02-174-6/+15
| | | | | | | | | | This will rarely be used, but it enables even more architectural flexibility, such as precompiling catalogs and storing them in memcached or equivalent. With this setup, a single host can probably serve all catalogs and you would then just have as many compiling hosts as needed. Signed-off-by: Luke Kanies <luke@reductivelabs.com>
* fixing obsolete comment in puppetdLuke Kanies2010-02-171-3/+3
| | | | Signed-off-by: Luke Kanies <luke@reductivelabs.com>
* Adding support for only using cached catalogsLuke Kanies2010-02-172-1/+5
| | | | | | | | | This basically allows a sysadmin to control when a client will compile a new catalog - with this option enabled, the client will use the cached catalog as long as it has one, only recompiling when run with the option disabled. Signed-off-by: Luke Kanies <luke@reductivelabs.com>
* Refactoring Configurer to enable the next featureLuke Kanies2010-02-171-27/+30
| | | | Signed-off-by: Luke Kanies <luke@reductivelabs.com>
* Fix #3155 - prevent error when using two matching regex in cascadeBrice Figureau2010-02-174-12/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The following manifest: case $var { /match/: { if $var =~ /matchagain/ { } } } is failing because the "=~" operators when matching sets an ephemeral variable in the scope. But the case regex also did it, and since they both belong to the same scope, and Puppet variables are immutables, the scope raises an error. This patch fixes this issue by adding to the current scope a stack of ephemeral symbol tables. Each new match operator or case/selector with regex adds a new scope. When we get out of the case/if/selector structure the scope is reset to the ephemeral level we were when entering it. This way the following manifest produces the correct output: case $var { /match(rematch)/: { notice("1. \$0 = $0, \$1 = $1") if $var =~ /matchagain/ { notice("2. \$0 = $0, \$1 = $1") } notice("3. \$0 = $0, \$1 = $1") } } notice("4. \$0 = $0") And the output is: 1. $0 = match, $1 = rematch 2. $0 = matchagain, $1 = rematch 3. $0 = match, $1 = rematch 4. $0 = Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
* Fixed link typoJames Turnbull2010-04-221-1/+1
|
* Fixed #3384 - Updated broken linkJames Turnbull2010-04-221-3/+3
|
* Making a Puppet::Module test more resilientLuke Kanies2010-04-131-3/+3
| | | | | | It would fail if a directory unexpectedly existed. Signed-off-by: Luke Kanies <luke@puppetlabs.com>
* Fixing yumrepo type to use 'flush'Luke Kanies2010-04-121-25/+1
| | | | | | | | It was previously relying on monkey-patching the last 'Change' instance in 'evaluate', but we removed 'evaluate', so this wasn't working any more. Signed-off-by: Luke Kanies <luke@puppetlabs.com>
* Only trying to retrieve passwords on OS X when rootLuke Kanies2010-04-121-2/+2
| | | | | | | We were otherwise failing whenever we tried to read a user. Signed-off-by: Luke Kanies <luke@puppetlabs.com>
* Fixing a warning in the aix package providerLuke Kanies2010-04-121-1/+1
| | | | Signed-off-by: Luke Kanies <luke@puppetlabs.com>
* Removing tests for code that was removed in the REST refactorLuke Kanies2010-04-121-38/+0
| | | | Signed-off-by: Luke Kanies <luke@puppetlabs.com>
* Fixing and porting Transaction Report testsLuke Kanies2010-04-121-3/+3
| | | | | | | There are still a few unported tests, but it's at least better now. Signed-off-by: Luke Kanies <luke@puppetlabs.com>
* Fixing Property#change_to_s in rare case failuresLuke Kanies2010-04-121-3/+3
| | | | | | | | | If we were removing a field, which really only 'cron' does, then we got an exception. This is fixed, and now tested. Signed-off-by: Luke Kanies <luke@puppetlabs.com>
* Fixing Hash functionality with non-constant keysLuke Kanies2010-04-121-1/+2
| | | | | | | It was only apparently working with constant keys, not, say, AST strings. Signed-off-by: Luke Kanies <luke@puppetlabs.com>
* Removing vistigial method in ASTHashLuke Kanies2010-04-121-3/+0
| | | | Signed-off-by: Luke Kanies <luke@puppetlabs.com>
* Porting/removing group test/unit testsLuke Kanies2010-04-121-5/+0
| | | | | | | Most of it was just complicated, and the rest useless. Signed-off-by: Luke Kanies <luke@puppetlabs.com>
* Cleaning up content/source codeLuke Kanies2010-04-122-15/+11
| | | | | | | | | | This is probably a slight refactor, but only because it fixed a bug (content not being copied over correctly from metadata), which required that slight refactor. Mostly this just makes the code a bit cleaner. Signed-off-by: Luke Kanies <luke@puppetlabs.com>
* Making SshAuthorizedKeys tests less brittleLuke Kanies2010-04-121-1/+1
| | | | | | | Also making them less likely to try to modify the local filesystem in any way. Signed-off-by: Luke Kanies <luke@puppetlabs.com>
* Markus's patch concerning string interpolationJesse Wolfe2010-04-123-1674/+1759
| | | | | | | | | | | From email: Some of the errors I needed to track down were actually coming from my string interpolation branch: * I wasn't handling "Foo ${1} bar" as a regexp back reference (and I don't like it, but hey) * I wasn't warning about & passing on the "unneeded" backslash in strings like 'foo\"bar' * I fumbled part of the conflict resolution with Brice's hash patch.
* The pure-ruby YAML lib doesn't accept parametersJesse Wolfe2010-04-091-1/+1
|
* Fix a failure in new FileBucket where it was impossible to read from aJesse Wolfe2010-04-093-4/+6
| | | | | | bucket with a non-default path. Signed-off-by: Jesse Wolfe <jes5199@gmail.com>
* Fixing various broken Resource::Type testsLuke Kanies2010-04-091-2/+7
| | | | | | Also making the code a bit cleaner. Signed-off-by: Luke Kanies <luke@puppetlabs.com>
* Renaming and fixing puppetrun tests.Luke Kanies2010-04-091-1/+4
| | | | Signed-off-by: Luke Kanies <luke@puppetlabs.com>
* Removing any mentions of :casesensitive settingLuke Kanies2010-04-094-13/+7
| | | | | | | | | | | | | | | | | It is a setting that was added years ago as a backward compatibility option and even if it still works, which is questionable, it has no purpose any longer. It just complicated the code and didn't do much, so it's gone now. Also simplified the interface of Leaf#evaluate_match, since it was now using none of the passed-in options. Finally, removed/migrated the last of the Selector/CaseStatement test/unit tests. Signed-off-by: Luke Kanies <luke@puppetlabs.com>
* Fixing syntax warningLuke Kanies2010-04-091-1/+1
| | | | Signed-off-by: Luke Kanies <luke@puppetlabs.com>
* Repair validate_checksum codepath, even though it is disabled.Jesse Wolfe2010-04-091-1/+5
|
* Resolving conflicts with ???Markus Roberts2010-02-171-5/+5
| | | | | | | | | When checksum is a parameter corresponding to checksum_type in the filesets rather than a checksum "strategy" the value :none should generally be computed rather than provided. If neither a source nor contents are provided, there is no need for a checksum and thus it should be :none; otherwise, use the provided value (or, if it's nil, let it pass through and be replaced by the default (:md5) in the bowels of the beast).
* Fixing a typo from a regexLuke Kanies2010-02-171-1/+1
| | | | Signed-off-by: Luke Kanies <luke@reductivelabs.com>
* Fixing change printing for content/ensureLuke Kanies2010-02-172-4/+9
| | | | Signed-off-by: Luke Kanies <luke@reductivelabs.com>
* Converted File[checksum] to a parameter not propertyLuke Kanies2010-02-174-273/+29
| | | | | | | | | At the same time I removed all of the code in checksum that managed tracking changes to the checksum over time. I'll add it back in as I fix the fact that changes aren't being tracked like the should at the moment. Signed-off-by: Luke Kanies <luke@reductivelabs.com>
* Adding "checksum?" helper method to Checksums moduleLuke Kanies2010-02-171-0/+5
| | | | Signed-off-by: Luke Kanies <luke@reductivelabs.com>
* Resolving conflicts with luke:tickets/testing/2954Markus Roberts2010-02-171-1/+1
|
* Adding virtual and exported resource support to the DSLLuke Kanies2010-02-172-7/+60
| | | | | | | | | | | Also changed the internals - we're no longer using Resource instances with the ruby block, instead we're using a simple new class. We had to do this because Resource has too many methods - e.g., 'file' returned the file name rather than created a new resource type. Signed-off-by: Luke Kanies <luke@reductivelabs.com>
* s/DSL::ResourceHelper/DSL::ResourceAPI/gLuke Kanies2010-02-173-3/+3
| | | | Signed-off-by: Luke Kanies <luke@reductivelabs.com>
* Adding simplistic pure ruby interfaceLuke Kanies2010-02-175-5/+128
| | | | | | | | | This is a simplistic DSL - you can create resource types (defined resources), classes, and nodes, and they can call functions and create resources. Nothing else, at this point. Signed-off-by: Luke Kanies <luke@reductivelabs.com>
* Adding environment support to parser resourcesLuke Kanies2010-02-171-0/+2
| | | | | | We just use the scope's environment. Signed-off-by: Luke Kanies <luke@reductivelabs.com>
* Resolving conflicts with ???Markus Roberts2010-02-171-3/+2
| | | | | Brice's hash implementation introduces new occurances of SQTEXT/DQTEXT which, with string interpolation, should simply be STRING.
* Moving the string interpolation parsing to the parser/lexerMarkus Roberts2010-02-174-1134/+1232
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch moves the syntactic aspects of string interpolation up into the lexer/parser phase, preparatory to moving the semantic portions down to the as yet unnamed futures resolution phase. This is an enabling move, designed to allow: * Futures resolution in and between interpolated strings * Interpolation of hash elements into strings * Removal of certain order-dependent paths * Further modularization of the lexer/parser The key change is switching from viewing strings with interpolation as single lexical entities (which await later special case processing) to viewing them as formulas for constructing strings, with the internal structure of the string exposed by the parser. Thus a string like: "Hello $name, are you enjoying ${language_feature}?" internally becomes something like: concat("Hello ",$name,", are you enjoying ",$language_feature,"?") where "concat" is an internal string concatenation function. A few test cases to show the user observable effects of this change: notice("string with ${'a nested single quoted string'} inside it.") $v2 = 3+4 notice("string with ${['an array ',3,'+',4,'=',$v2]} in it.") notice("string with ${(3+5)/4} nested math ops in it.") ...and so forth. The key changes in the internals are: * Unification of SQTEXT and DQTEXT into a new token type STRING (since nothing past the lexer cares about the distinction. * Creation of several new token types to represent the components of an interpolated string: DQPRE The initial portion of an interpolated string DQMID The portion of a string betwixt two interpolations DQPOST The final portion of an interpolated string DQCONT The as-yet-unlexed portion after an interpolation Thus, in the example above (phantom curly braces added for clarity), DQPRE "Hello ${ DQMID }, are you enjoying ${ DQPOST }?" DQCONT is a bookkeeping token and is never generated. * Creation of a DOLLAR_VAR token to strip the "$" off of variables with explicit dollar signs, so that the VARIABLEs produced from things like "Test ${x}" (where the "$" has already been consumed) do not fail for want of a "$" * Reworking the grammar rules in the obvious way * Introduction of a "concatenation" AST node type (which will be going away in a subsequent refactor). Note finally that this is a component of a set of interrelated refactors, and some of the changes around the edges of the above will only makes sense in context of the other parts.
* Resolving conflicts with jesse:feature/master/3394Markus Roberts2010-02-171-1/+0
| | | | Without this change, rake spec crashes with a message about feature being undefined.
* Resolving conflicts with luke:tickets/master/2759Markus Roberts2010-02-171-1/+1
|