Open Source로 구성된 Deploy Management System-2

해결 과제들


trunk -> tag 이관

svn trunk에서 tag로 이관하는 작업은 비교적 쉽게 구현 가능 - svnkit. 

Build

svn tag로 이관된 소스를 build하는 것도 maven + jenkins 조합으로 완료

deployment

build된 resource -> 개발 및 운영서버에 배포는 고려할 사항이 많이 존재.

과제

1. 다양한 종류 
  • java파일 -> 컴파일된 class를 배포해야 함
  • 공통 lib jar -> 각각의 서버에 , 각 업무별 WEB-INF/lib에 배포
  • exclude -> .svn, .classpath, pom.xml 과 같은 파일 
  • include -> *.class, *.xml 


2. 다양한 Target 
  • 다중 서버 
  • 다중 WAR  


어떻게 해야 할까?

<?xml version="1.0" encoding="UTF-8"?>
<project default="svn" basedir="D:/workspace">
    <svn rootUrl="svn://localhost/test"
        srcRootPath="/trunk"
        targetRootPath="/tag/1.0"
        userName="airlee"
        password="1111"
        startRevision="-1"
        endRevision="0" />

    <target name="svn" >
        <ftp host="localhost" port="21" username="user" 
            password="1111"
            rootPath="/data/app_web1"
            remoteFileSeparator="/"
            verbose="true"
            skipFailedTransfers="true"
            ignoreNoncriticalErrors="true"
            actualTransfer="false" >
          
            <fileset dir="/app_web1/target/application-1">
                <replace from="/trunk/application-1/src/main/java" to="/WEB-INF/classes" />
                <replace from="java" to="class" />
                <replace from="/trunk/application-1/src/main/resources/spring"
                             to="/WEB-INF/classes" />
               <include name="/**/*.class" />
                <include name="/**/*.xml" />
                 <exclude name="/**/test/**" />
                 <exclude name="/**/pom.xml" />
            </fileset>
        </ftp>
    </target>
</project>

댓글

이 블로그의 인기 게시물

Charset 변환 ( EUC-KR, UTF-8, MS949, CP933 )

GZipUtils- gzip을 통한 압축시 charset처리

비동기 메시지 처리 시스템(1)-JMS, RabbitMQ