If one specifies a tmp dir such as `file://mnt/dev0/tmp/hadoop-${user}`, won't this just create a directory called, literally, `/mnt/dev0/tmp/hadoop-${user}`?  That wouldn't be good.  What needs to happen is that the hadoop cookbook needs to create the actual ${user} directories itself, so that the writer of the wrapper cookbook doesn't have to know about all of the various users that hadoop is going to use.

A better solution (although still pretty janky, IMO, because it involves a string replacement) might be to loop over all of the users that the cookbook needs to create tmp directories for (the way it does now) but just do a sub(/${user}/, actual_user) for the actual directory name.  And strip of 'file://', obvi.