3

Maven 프로젝트에는 여러 Maven 프로파일이 있습니다. 각 프로필에서 나는 docker-maven-pluginmaven-failsafe-plugin입니다. 이것이 목표와 단계를 묶은 방법입니다.Maven 프로파일 및 단계에 대한 설명

고정 표시기-받는다는 - 플러그인

<phase>pre-integration-test</phase> 
<goals> 
    <goal>start</goal> 
</goals> 

<phase>post-integration-test</phase> 
<goals> 
    <goal>stop</goal> 
    <goal>remove</goal> 
</goals> 

받는다는 - 안전 장치 - 플러그인

<phase>integration-test</phase> 
<goals> 
    <goal>integration-test</goal> 
</goals> 

<phase>verify</phase> 
<goals> 
    <goal>verify</goal> 
</goals> 

I 각 데이터베이스 유형 (즉, MySQL은, 포스트 그레스 등)에 대한 정보를 가지고있다. 내가하려는 것은 각 데이터베이스 유형을 가진 도커에 대한 통합 테스트를 실행하는 것입니다.

제 질문은 여러 프로필 (예 : mvn clean install -P local-postgres,local-mysql)이있는 mvn을 실행할 수 있으므로 각 프로필이 하나씩 차례로 실행됩니다. 내 요구 사항은 2 개의 도커 컨테이너를 한꺼번에 처리하지 않는 것입니다.

모든 프로필의 첫 번째 단계는 pre-integration-test이고, 나머지 부분은 The name "/apim-postgres" is already in use by container xxxxx입니다. 여러 프로필이 주어지면 어떻게해야합니까?

내 요건이 충족 될 수있는 방법이 있습니까?

답변

0

잘 될지 모르겠지만 각 프로필을 독립적으로 정의하면 제대로 작동합니다. 각 플러그인에 대해 각 플러그인을 두 번 정의합니다. 실행 순서는 다양한 요소에 따라 다릅니다. 나는 당신이 프로파일을 정의한 곳을 모르지만, 같은 폼에 정의되어 있다면 그 폼은 그 폼에 정의 된 것이어야한다. 자세한 내용은 https://www.waltercedric.com/index.php?option=com_content&view=article&id=1795&catid=129&Itemid=332을 참조하십시오.

+0

내 모든 프로필은 동일한 내용으로 구성되어 있습니다. 나는 네가 준 기사를 읽고있다. – Bee

+0

규칙 4는 내가 원했던 것과 유사하지만 동일하지는 않습니다. 필자가 원하는 것은 프로파일 -2의 모든 단계 전에 프로파일 1의 모든 단계를 실행하는 것입니다. – Bee