2

maven에서 goal을 생성하여 프로덕션 tomcat 7 인스턴스에 Java Webapp를 배포하고 싶습니다. 이 일을하는 가장 좋은 방법은 무엇입니까? SFTP로 전쟁을 처리하고 바람둥이에 다시로드하라는 플러그인이 있기를 바랍니다. 이 플러그인은 문제 발생시 롤백을 처리하고 업데이트 된 정적 파일을 S3에 업로드 (클라우드 프런트 캐시 재설정)하고 db 업데이트를 동기화해야 할 수 있습니다.Maven을 통해 프로덕션에 배포

Maven 외부에서 실행되는 스크립트가 필요합니까? 또는이 자동 배포 기능이 Ant로 가장 잘 수행 되었습니까?

답변

0

이렇게하려면 cargo-maven-plugin을 사용할 수 있습니다. 그것은 원격으로 Tomcat에 전개 할 수있는 SFTP가 아닙니다. sftp가 필요한 경우 wagon-plugin을 사용하여 파일을 scp하고 cargo-plugin을 통해 Tomcat을 다시 시작할 수 있습니다. 정적 파일은 왜건 플러그인에서 처리 할 수 ​​있습니다 (그러나 그 시점에서는 확실하지 않습니다).

목표를 작성할 필요가 없습니다 (플러그인 작성을 의미).

프로덕션에 배포하려는 war 파일에 대한 종속성이있는 별도의 maven-project를 만드는 것이 좋습니다.

+0

cargo-maven-plugin 및 다른 tomcat 플러그인의 문제점은 관리자의 http PUT 메커니즘에 업로드된다는 것입니다. 롤백은 자동으로 허용되지 않습니다. 위에서 언급 한 것들 중 일부는 배치와 함께 진행되는 다른 모든 작은 것들만 보자. –

0

DB 업데이트 부분에서는 Liquibase (롤백 처리)를 사용하는 것이 좋습니다. 배포 롤백은 어떻게 수행할지 아직 모르지만 아마도 Maven 릴리스 플러그인이나 다른 릴리스 관리 방법을 사용하고 있다면 이전 릴리스를 수동으로 배포 할 수 있습니다.

0

탄력적 인 beanstalk와 maven beanstalk 플러그인을 사용하는 방법은 어떻습니까?