2016-08-17 3 views
1

저는이 질문을 Capistrano의 GitHub 저장소 문제 추적기 (https://github.com/capistrano/capistrano/issues/1750)에 묻었으며 여기에서 같은 질문을하라고했습니다.deploy_to 변수에 사용자 지정 서버 속성을 채우는 방법

동일한 응용 프로그램을 동일한 서버에 여러 번 배포하기 위해 deployment_to 변수에 조직이라는 사용자 지정 서버 속성을 채우려고합니다.

set :deploy_to, "/home/deploy/sites/#{server.properties.organisation}" 

서버 배열을로드 할 수없는 것 같습니다. fetch() 메소드를 사용한다.

답변

0

이 경우에는 몇 가지 다른 작업을 수행했습니다. 각 설치가 실제로 동일하면 한 번 배포하고 다른 설치를 심볼릭 링크합니다. 각 설치마다 다른 매개 변수가있는 경우 동일한 서버에서 각각이 가리키는 여러 대상 (prod-1, prod-2, prod-2 등)을 만듭니다. 도우미 메서드를 사용하여 코드 중복을 줄일 수 있습니다. 그런 다음 bundle exec cap prod-1 deploy && bundle exec cap prod-2 deploy && ...을 실행하는 스크립트를 작성합니다.

+0

이것은 제가 지금 해결 방법으로하고있는 바로 그 것입니다. 그것은 빠른 해킹과 멀티 서버 배포 도구의 목적을 패배라고 느낍니다. 더 나은 솔루션이 있어야합니다. –

+0

또 다른 해킹은 배포 대상으로 여러 개의 CNAME을 사용하는 것일 수 있습니다.이 CNAME은 모두 동일한 서버를 참조합니다. –