12 votes

Y a-t-il un analogue de rsync pour Ant ?

J'ai besoin d'un analogue de rsync pour la fourmi. Le problème est de copier les fichiers du répertoire source vers l'ensemble des sous-répertoires, ce qui était auparavant réalisé avec script.

rsync -r --ignore-existing $BASE_DIR/common/config/* $BASE_DIR/config

Merci de votre aide

8voto

Tom Howard Points 3301

Vous pouvez utiliser exécuter pour appeler rsync depuis Ant vous pouvez utiliser la fonction java tâche à appeler Jarsync o java-sync ou vous pouvez créer un tâche de fourmi personnalisée pour appeler l'une ou l'autre de ces bibliothèques.

7voto

moutons Points 71

Question de zombie mais mise en ligne https://gist.github.com/garethr/878364 au cas où je la chercherais à nouveau. Collage du contenu de la Gist au cas où quelque chose se passerait.

<project name="{{ name }}" default="help" basedir=".">
<property name="username" value="{{ username }}"/>
<property name="host" value="{{ host }}"/>
<property name="dir" value="/srv/{{ path }}/"/>

<tstamp>
    <format property="TODAY_UK" pattern="yyyyMMddhhmmss" locale="en,UK"/>
</tstamp>

<target name="help" description="show available commands" >
<exec executable="ant" dir="." failonerror="true">
<arg value="-p"/>
</exec>
</target>
<target name="deploy-to" description="show where we are deploying to" >
<echo>${username}@${host}:${dir}</echo>
</target>

<target name="deploy" description="deploy usng rsync" >
<exec executable="rsync" dir="." failonerror="true">
<arg value="-r"/>
<arg value="."/>
<arg value="${username}@${host}:${dir}"/>
<arg value="--exclude-from=rsync.excludes"/>
<arg value="-v"/>
</exec>
</target>

<target name="deploy-test" description="test deploy usng rsync with the dry run flag set" >
<exec executable="rsync" dir="." failonerror="true">
<arg value="-r"/>
<arg value="."/>
<arg value="${username}@${host}:${dir}"/>
<arg value="--exclude-from=rsync.excludes"/>
<arg value="--dry-run"/>
<arg value="-v"/>
</exec>
</target>

<target name="backup" description="backup site" >
<exec executable="scp" dir="." failonerror="true">
<arg value="-r"/>
<arg value="${username}@${host}:${dir}"/>
<arg value="backups/${TODAY_UK}"/>
</exec>
</target>

</project>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X