2012-02-16 1 views
0

우리는 스칼라 백엔드 (Artifactory를 사용하여 유지 관리)와 통합 된 jRuby 프론트 엔드 (git를 사용하여 유지 관리)를 가지고 있습니다. 백엔드 jar 파일은/lib/jars에 있습니다.git submodule은 얼마나 좋은가?

현재로서는 jar가 업데이트 될 때마다 해당 jar를 다운로드하여/lib/jars에 복사합니다. 우리는 git (공간, 속도 등)에 항아리를 추가하지 않으므로 어떤 항아리가 특정 프론트 엔드 커밋과 함께 진행되었는지 추적 할 수 없습니다. 우리는 다음과 같이 그것을 달성하고자하는 어떤

, V1 버전 1.1에서

  • 프론트 엔드에서 1.1에서

    1. 프론트 엔드, 백엔드, 백엔드는 1.2에서 지금
    2. 프런트 엔드를 v2로 간다 V2에서 V2
    3. 프론트 엔드 2.2로 진행하고, 백 - 엔드에서, 2.2에서
    4. 프론트 엔드 백엔드를 (강제 사용자가 용기를 업데이트), 백엔드
    5. 프런트 엔드 이제 V2.3에서 (F를 v3으로 간다 ORCE 사용자가 V3 백엔드가 업데이트 될 때마다

    에서) 백엔드를 항아리를 업데이트, 백엔드가 업데이트되었는지 프론트 엔드 디바이스를 이야기하고, "자식 풀"에 같은 작업을 수행해야하는 방법은 무엇입니까 백엔드 개발자가 Artifactory에 넣은 마지막 항아리를 얻으십시오.

    가능한 해결책

    1) 백 엔드 디바이스가, 단지 빌드 ==========================가 artifactory하는 푸시

    2) 그 빌드 프로세스는 또한 프론트 엔드 응용 프로그램

    3) 프런트 엔드 자식 풀 최신 항아리를 다운로드에 설정/jars.rb의 항아리의 버전 번호를 업데이트합니다 (그러나 커밋이 항아리를 추가하지 않습니다) config/jars.rb에 변경이있는 경우

    ===================

    ** 궁극적으로 문제는 특정 버전의 jar 버전을 추적하는 것입니다 프론트 엔드 저장소에 그 항아리를 저장하지 않고 프론트 엔드 커밋 (이미 artifactory에 존재하기 때문에) **

    이 경우에 git submodule이 작동합니까? 어떤 제안?

  • +0

    혼란 스럽습니다. config/jars.rb를보고 커밋 된 버전을 확인할 수 없습니까? –

    +0

    가능한 해결책으로 (3 단계) 제안했습니다. 더 명확하지 않은 것에 대해 유감스럽게 생각합니다. – Rahul

    답변

    1

    내가 알기로 Artifactory의 빌드 통합 기능이 작업을 수행해야합니다. 빌드를 트리거 한 git commit으로 각 빌드 된 jar를 추적 할 수 있습니다.

    0

    간단한 Artifactory plugin을 작성하여 afterCreate() 이벤트를 가로 채어 프론트 엔드 구성을 새로 배포 된 백엔드 병에 대한 참조로 업데이트 할 수 있습니다. 플러그인은 Artifactory Pro의 일부입니다.