Issue #2910 has been updated by Markus Roberts.

So the difference between match and tests such as age is that, for a given 
target, match will either always be true or never be true, but the value 
doesn't change.  It would make sense to write something like:

<pre>
tidy { "/my/occasional.log": age => '1w' }
</pre>

with the intent that /my/occasional.log gets tidied after it sits for a week.  
But 

<pre>
tidy { "/my/occasional.log": matches => "*.txt" }
</pre>

doesn't make sense; /my/occasional.log will *never* match *.txt, and so this is 
just a noop.  (The converse case with matches => "*.log" is only a little less 
silly).

At the moment I'm leaning towards requiring a non-default, non-false, non-zero 
value for recurse if matches is specified; rather than trying to guess and "do 
the right thing" when someone specifies something a meaningless setting, we 
should tell them and make them specify something meaningful.

-- Markus

P.S. The killer argument about defaulting to "recurse => 1" is that we just 
push the problem into different edge cases; what if they specify "recurse => 
false" (as in the example text)?  What if they specify "recurse => 1"?  Do we 
bump it to 2?  Or is 1 now a synonym for 0?  And so on.


----------------------------------------
Bug #2910: tidy failing to remove any matching files
http://projects.puppetlabs.com/issues/2910

Author: Peter Couvares
Status: Needs design decision
Priority: High
Assigned to: James Turnbull
Category: tidy
Target version: 0.25.5
Affected version: 0.25.4
Keywords: 
Branch: 


I'm somehow unable to get tidy to work _at all_ -- here is what I'm specifying, 
right inside a node definition in nodes.pp:
<pre>
     tidy { tidy_tmp:
          path => "/tmp/",
          age => "7d",
          backup => false,
          matches => [ "jna*.tmp" ],
     }
</pre>

The rest of my node definition, and everything else in nodes.pp more generally, 
works fine -- but matching files are not being tidied.

I can confirm many matching files on the client host in question with:

<pre>
find /tmp -maxdepth 1 -name 'jna*.tmp' -atime +7 -print
</pre>

I've tried the following in turn, with no luck:
* removing the matches attribute altogether,
* removing the age attribute altogether,
* replacing the matches list with a simple string,
* removing the explicit path attribute and using "/tmp" as the name,
* and setting the type attribute to "mtime" instead of the default atime.

I'm out of ideas, no one on IRC had any other ideas, and so I now suspect a bug.

If I'm doing something foolish, however, I'd be grateful to know.  Thanks.


-- 
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
http://projects.puppetlabs.com/my/account

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Bugs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/puppet-bugs?hl=en.

Reply via email to