1.フォルダの同期
2.バックアップ
を自動化してみた。
以下のxmlをeclipseに読ませて外部ツールのantを実行すると、
xmlのあるプロジェクトのsrc以下のファイルを一度c:\export\srcへエクスポートして、エクスポート先と目的のフォルダが同期をとります。
そして同期前にバックアップをc:\export\bkに作成する。
ちなみに同期時のrobocopyのログはc:\export\logに吐き出すようにしてます。
一応動いたので満足w
昨今はeclipseをみんな良く使うなーと思って、でも、実際に実行環境(テスト、ステージング、本番含む)にアップする
時に人手が介在すると結構余分なファイルがアップされる(.svnとか平気でアップされる)のが嫌なんです。
かと言って、限られた人しかアップしないとかナンセンス。
なので、人手が介在しないようなシステム(仕組みというか手順)を用意するのがそもそもですよね?
って感じでこれからも研究していきたいと思われ。
人類猿化計画にまた一歩近づいた気がするw
<?xml version="1.0" encoding="UTF-8"?> <project name="upload_test_up" default="test_up" basedir="."> <!-- *** properties *** --> <property name="export.src.path" value="c:\export\src" /> <property name="export.target.path" value="${basedir}\src" /> <property name="bkup.path" value="C:\export\bk\src_" /> <property name="syncronize.log.path" value="C:\export\log\syncronize_" /> <property name="syncronize.command" value="robocopy" /> <property name="syncronize.option" value="/E /PURGE" /> <property name="syncronize.src.path" value="c:\export\src" /> <property name="syncronize.target.path" value="c:\export\syncronize\src" /> <target name="init" depends="export"> <tstamp></tstamp> </target> <!-- *** control this project *** --> <target name="test_up" depends="init,export,syncronize"> </target> <!-- *** update from SVN *** --> <!-- *** export without svn directory *** --> <target name="export"> <copy todir="${export.src.path}"> <fileset dir="${export.target.path}" /> </copy> </target> <!-- *** syncronize target directory *** --> <target name="bkup" > <!-- <copy todir="${bkup.path}${DSTAMP}${TSTAMP}"> <fileset dir="${syncronize.target.path}" /> </copy> --> <zip destfile="${bkup.path}${DSTAMP}${TSTAMP}.zip" basedir="${syncronize.target.path}" /> </target> <target name="syncronize" depends="bkup"> <exec executable="${syncronize.command}" os="${os.name}" output="${syncronize.log.path}${DSTAMP}${TSTAMP}.log"> <arg line=" ${syncronize.option} '${syncronize.src.path}' '${syncronize.target.path}'" /> </exec> </target> </project>
0 件のコメント :
コメントを投稿