2012-12-13 2 views
3

빌드 및 테스트 시스템을 Jenkins로 옮기고 빌드 아티팩트를 관리하는 쉬운 방법 (모든 로직을 직접 코딩 할 필요가없는)을 찾고 있습니다.C++ 빌드 아티팩트 관리

은 기본적으로 우리가 빌드의 종류에 따라 순서대로 저장하는 조직적인 방법이 필요는 그것을 구축 된 사용자 및 예를 들면 :

johnd/nightly/r543241/win32/program.zip 
johnd/nightly/trunk/lin64/program.tar.gz 
master/release/2.1/win32/program.zip 

빌드가 완료되면 우리가 업로드 할 수있는이 방법은, 테스트 단계에서 필요한 아티팩트를 쉽게 검색 할 수 있습니다.

지금까지는 파일을 NFS에있는 디렉토리에 저장했지만 최근에는 이슈 관리자를 고려하기 시작했습니다. Artifcatory, Archiva 및 Nexus를 살펴 보았습니다. 하지만 모두 자바와 매우 흡사하거나 적어도 작업 할 수 있어야합니다. 나는 더 복잡한 것을 소개하고 싶지 않기 때문에 (우리는 주로 파이썬으로 작업한다. scons는 빌드 툴이다.) 믹스에 maven을 소개하고 싶지 않다. 쉬운 커맨드 라인을 가진 것을 찾고있다. 더 나은 REST/Python 인터페이스)를 사용하여 이슈를 업로드, 다운로드, 관리 할 수 ​​있습니다.

아티팩트 관리자를 사용하지 않고 릴리스/테스트 요구 사항에 맞게 C++ 아티팩트를 관리하기 위해 다른 영리한 방법을 사용한다면 그 점에 대해서도 기쁜 마음입니다.

답변

0

나는 정확히 같은 문제가 있습니다. 나는 쉽게 인공물을 통합하는 데 성공하지 못하여 잊어 버렸다.

당분간 나는 파일을 NFS 공유에 scp로 복사하기 위해 artefact 플러그인을 사용합니다. 그러나 공유는 두 대의 컴퓨터에서 다르게 탑재 될 수 있으며 Windows는이를 직접 액세스 할 수 없기 때문에 이는 좋은 해결책이 아닙니다.

하지만 실제 아티팩트 관리자는 우리 프로젝트에 그렇게 좋은 것입니다.

필자의 이전 직업에서는 훌륭한 서비스를 제공하는 문서 CMS (LiveLink)를 사용하고있었습니다 : - 자기 구성 폴더. - persistent url (우리는 폴더와 파일의 이름을 바꿀 수 있습니다. 즉, "http : // server/go/123456789123456789"가 항상 같은 파일을 가리키고있는 SOOO 위대한 파일이었습니다. 은 wget이 URL을 제공했다 당신은 파일 얻을 -. 파일 versionning을 - 메타 데이터, 고급 검색

난 아직도 오픈 소스 소프트웨어와 같은 솔루션을 찾고 있어요 그것을 찾을 수 없습니다를

. 당신은 단지 두 가지 작업 사이에 아티팩트를 공유 할 필요가 있습니다. "다른 빌드에 대한 아티팩트 복사"플러그인을 사용하십시오. 저는이 작업을 사용하여 빌드 작업과 테스트 작업으로 작업을 분할합니다 (실제로 3 가지 테스트 작업이 있습니다. 각 커밋 후에, 매일 아주 천천히 행해진 하나, 그리고 ne 아주 느린 매주 끝).