title: Perform an action on each file during installApp phase of Gradle build
body: <p>Here is a minimal build.gradle file I'm using.</p>
  
  <pre><code>apply plugin: 'application'
  
  installApp {
    eachFile {
      println "$it.name"
      loadProperties(it)
    }
  }
  </code></pre>
  
  <p>I'm trying to load properties into some placeholders in a properties file located in <code>src/dist/bin</code>. This technique works fine if the properties file is in <code>src/main/resources</code> and I replace <code>installApp</code> with <code>processResources</code> which I am doing in another project within the build.</p>
  
  <p>The <code>println</code> isn't printing anything so it makes sense the placeholders aren't replaced but I don't understand why it's not iterating through all the files the installApp task is copying.</p>
  
  <p>Running this as <code>./gradlew clean installApp</code> using gradle 1.10.</p>
  
  <p>It appears that the installApp task doesn't run closure passed to the eachFile function. Here is a complete build.gradle file that demonstrates this behavior</p>
  
  <pre><code>apply plugin: "application"
  
  mainClassName = "test.Test"
  
  installApp {
    eachFile {
      println "$it.name"
    }
  }
  </code></pre>
  
  <p>I run <code>gradle clean installApp -i</code></p>
  
  <p>and around the installApp section get </p>
  
  <pre><code>:installApp (Thread[main,5,main]) started.
  :installApp
  Executing task ':installApp' (up-to-date check took 0.011 secs) due to:
    Output file /Users/joshbrackett/Documents/workspace/gtest/build/install/gtest has changed.
    Output file /Users/joshbrackett/Documents/workspace/gtest/build/install/gtest/bin/gtest has been removed.
    Output file /Users/joshbrackett/Documents/workspace/gtest/build/install/gtest/lib/gtest.jar has been removed.
  :installApp (Thread[main,5,main]) completed. Took 0.748 secs.
  </code></pre>