2012-03-08 3 views
1

내가 이것을 따라 가기 쉽도록 노력합시다. 내 개발자를 위해 Vagrant를 배포 중이며 퍼핏을 사용하여 장비를 프로비저닝 할 예정입니다. 내가 두 세트의 머신을 가지고 있다고 가정 해보자. 하나는 아파치/mysql5 서버와 아파치/mongodb 서버이다. 퍼핏 (Puppet)을 사용하여 여러 구성 요소를 관리하지만 중앙 집중화 된 Puppetmaster 서버는 사용하지 않습니다.Mercurial에서 특정 디렉토리를 당기시겠습니까?

그런데 Mercurial 저장소에 두 개의 디렉토리가 있습니다. mysql을 사용하여 무언가를 수정해야하는 경우 devs가 최신 변경 사항을 적절하게 가져올 수 있습니다. 내가 겪고있는 문제는 디렉토리 구조를 복제하지 않고 저장소 구조를 처리하는 방법입니다.

manifests -이 각 시스템에 따라 다릅니다, mysql 기계는 mongodb 기계가 mongodb

modules에 대한 자신의 지시를해야합니다 동안 mysql를 설치하는 지침이있을 것이다 - 이것은 모든 컴퓨터에서 공유 있지만 필요한 폴더 이 폴더 안에는 각 컴퓨터에 저장되어 있습니다 (예 : modules/mongodb 및 modules/mysql).

이 모든 것을 하나의 큰 저장소에 던지면 "apache + mysql"서버가 "apache + mongodb"모듈 용 모듈을 다운로드하는 것을 원하지 않습니다. manifests 디렉토리를 특정 리포에 넣고 modules 폴더에서 해당 폴더 만 다운로드한다고 가정 해 보겠습니다.

+0

하위 레 포지를 시도해 볼 수 있습니다. –

답변

3

Subrepository의 Mercurial 기능을 사용할 수 있습니다. 내가 정확히 당신이 원하는 것을 이해한다면

, 나는 다음을 수행합니다 : 각각의 다양한 모듈

  • 각 다양한 매니페스트
  • 하나 명의 저장소에 대한

    1. 하나의 저장소는 "최고 수준의"저장소 만들기 위에서 여러 가지 필요한 하위 보관소가 포함될 각 기계 유형에 대해
  • 관련 문제