2011-11-07 2 views
2

작동하는 p2 저장소를 생성하는 작업중인 Tycho 빌드가 있습니다. 나의 현재 작업 흐름은이 빌드의 결과를 프로젝트의 대상 디렉토리에서 p2 저장소를 호스팅하는 웹 서버로 수동으로 끌어다 놓는 것입니다. 내 티코 빌드의 결과는 정상 찾습니다tycho p2 저장소 결과를 로컬 파일 시스템 또는 로컬로 유지 관리되는 p2 ​​저장소의 위치에 배포하는 방법

${projectBaseDir}/target/repository 
    - features 
      - com.my.product.feature.201111071414.jar 
    - plugins 
      - com.my.product.plugins 
    - artifacts.jar 
    - content.jar 

그럼, 저장소 디렉토리에이 빌드의 결과를 복용하고 웹 서버에 그들을 배치에 대해 "업계 표준"입니다.

이 경우, 빌드 서버를 실행중인 동일한 시스템에서 p2 저장소의 웹 서버를 실행하므로 디렉터리 명령에 대한 간단한 복사가 작동합니다.

나는 행운과 함께 자원 : 복사 리소스를 사용하여 maven-resources-plugin을 시도했다. 잘못된 출력 디렉토리에 대한 오류가 계속 발생했습니다. 그 목표의 일반적인 목적은 으로 복사하고 파일을 복사하지 말고 에서 대상 디렉토리로 파일을 복사하기 때문에 복사 리소스가 여기에있는 것처럼 느껴지지 않습니다. 메이븐 빌드.

내 작업이 단순 해 보이고 파일을 복사 할 수있는 옵션이 많다는 것을 알았지 만,이 작업을 수행하는 데 "더 좋은 방법"또는 "더 나은 방법"을 찾고 있습니다. 그러한 표준이 존재한다면.

덕분에, TW

답변

2

antrun 플러그인으로 원하는 것을 얻을 수 있습니다. Maven 빌드 중에 Ant 작업/대상 (파일 복사 등)을 사용하여 작업을 수행 할 수 있습니다. http://download.ralph-schuster.eu/eu.ralph-schuster.uploadfiles-maven-plugin/STABLE/ : 난 그냥 그위한 플러그인을 완료

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-antrun-plugin</artifactId> 
    <version>1.6</version> 
    <executions> 
     <execution> 
     <id>configFix</id> 
     <phase>package</phase> 
     <configuration> 
      <target name="configFix"> 
       <copy file="${project.build.directory}/p2/some.file" todir="C:\My\Directory" overwrite="true"> 
       </copy> 
      </target> 
     </configuration> 
     <goals> 
      <goal>run</goal> 
     </goals> 
     </execution> 
    </executions> 
</plugin> 
1

저장소를 게시하는 방법 미네르바의 example 있습니다.

+0

그건 내가 두려워했던거야. 이 예제가 내 p2repository 빌드 아티팩트와 함께 Hudson/Jenkins 빌드로 수행하는 것과 똑같은 작업을 수행하고 있습니다. 그러나이 시점에서 p2repository가 업데이트 사이트로 푸시되도록 cron 작업을 사용하지 않습니다. 나는 크론 작업을 피하고 대신 Tycho 또는 Maven에 내장 된 것을 찾으려고했습니다. 해당 기능이 아직없는 것 같습니다. – twindham

+0

타이코의 범위를 벗어났습니다. 어떤 방법 으로든 (scp, ftp와 같은) Maven의 일부 플러그인을 사용하여 유물을 어디서나 (회사 내부 또는 외부의 서버) 배포 할 수 있습니다. – Kane

0

:

나는 다음과 같은 당신을 위해 일하는 것이 기대합니다. 리포지토리 서버에서 명령을 실행할 수있는 방법조차 제공합니다. h 치 후에이 L지를 h 제하거나 병합하기 위해 이전 파일을 h 제합니다.

배포 문제가 해결되기를 바랍니다. :)