On Wed, Nov 4, 2009 at 12:22, Hans Dockter <[email protected]> wrote:
>
> On Nov 4, 2009, at 3:04 PM, Jason Porter wrote:
>
> Sent from my iPhone
> On Nov 4, 2009, at 4:43, Levi Hoogenberg <[email protected]> wrote:
>
> Hi Jason,
>
> I don't know if it's the Gradle way, but in one of my projects' build.gradle
> I have the following:
>
> processResources {
>     filter(org.apache.tools.ant.filters.ReplaceTokens, tokens: [version:
> project.version])
> }
>
> This replaces @version@ in a property file, so that it can be read from the
> code.
>
> The processResources task is of type Copy.
> See
> Javadoc: http://gradle.org/0.8/docs/javadoc/index.html?org/gradle/api/tasks/Copy.html
> What you could do in your case:
> Properties props = new Props()
> props.load(...)
> copy {
>    from 'path_to_file_to_be_filtered'
>    into ...
>    props.each { key, value ->
>       filter(ReplaceTokens, tokens: props) // It depends on you set up if
> this is exactly what you want.
>    }
> }
> - Hans
> --
> Hans Dockter
> Gradle Project Manager
> http://www.gradle.org

Thans Hans, that's very, very close to what I want to do.  I guess
what I really want is a way to filter files before they're added to an
artifact (in this case the war).  For example I need to replace a
context-param in my web.xml based on the environment I'll be deploying
to (dev, qa, prod, etc).  I could copy out that new file to a
different location and modify the war task.  If this is the only way
to do it, okay cool.  However, filtering while building an archive
would be awesome.  It doesn't look like ant this though, and gradle
may not either (as it's using the ant tasks for this I believe).

>
> Regards,
>   Levi
>
> On Wed, Nov 4, 2009 at 7:46 AM, Jason Porter <[email protected]>
> wrote:
>>
>> In a war I've got I'd like to filter a file that ultimately ends up in
>> the WEB-INF directory (chances are I'll just put it here under
>> webapp/WEB-INF anyway), but I want to replace some tokens in it
>> (preferably with items that exist in a properties file).  I know how
>> I'd do this in ant, but what's the gradle way of doing it?
>>
>> --
>> Jason Porter
>> Real Programmers think better when playing Adventure or Rogue.
>>
>> PGP key id: 926CCFF5
>> PGP fingerprint: 64C2 C078 13A9 5B23 7738 F7E5 1046 C39B 926C CFF5
>> PGP key available at: keyserver.net, pgp.mit.edu
>>
>> ---------------------------------------------------------------------
>> To unsubscribe from this list, please visit:
>>
>>    http://xircles.codehaus.org/manage_email
>>
>>
>
>
> That would work fine, but I don't want to list the tokens and their values
> in the build file. I'd rather have them pulled from a properties file (so it
> can change from box / environment). Think stuff like user names and
> passwords, external locations, etc.
>



-- 
Jason Porter
Real Programmers think better when playing Adventure or Rogue.

PGP key id: 926CCFF5
PGP fingerprint: 64C2 C078 13A9 5B23 7738 F7E5 1046 C39B 926C CFF5
PGP key available at: keyserver.net, pgp.mit.edu

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to