2009-06-16 3 views
4

나와 팀이 몇 가지 재사용 가능한 스크립트를 작성하기 시작했습니다. 이들은 독점 앱과 특정 서버 환경에서 작업 할 때만 조직 내에서 재사용 할 수 있습니다. Rubyforge 나 github 등에는 적합하지 않습니다.조직 내에서 루비 코드 공유하기

제 질문은 모든 사용자에게 최신의 훌륭한 스크립트를 사용하기위한 최선의 방법은 무엇입니까? 우리는 한 서버에서이 스크립트를 거의 실행하지만 다른 서버로 확장해야 할 수도 있습니다.

우리는 그들을 보석으로 묶어서 사적 보석 서버를 시작해야합니까?

일반적인 공용 공유 디렉토리와 같은 간단한 것입니다. 아마도 SCM에서 다운로드/업데이트 할 스크립트가 있습니까?

다른 아이디어?

감사합니다 ....이 코드 (만 팀, 또는 다른 너무 사람을) 변경하려는, 또는이를 위해 얼마나 많은 돈을 얼마나 많은 사람들이 같은 몇 가지 요인에 따라 달라집니다

답변

2

?

개인적으로 몇 가지 버전 시스템을 사용하여 스크립트를 업로드 할 수있는 build + gem 서버를 만들 것입니다 (git 또는 svn과 같고, 프로젝트에서 얼마나 많은 사람들이 작업하는지에 따라 다름) 그것은 일반적인 간격으로 소스에서 보석을 자동 생성하고 다른 버전으로 저장합니다. 이렇게하면 응용 프로그램의 보석을 저장하는 권한있는 서버를 항상 사용할 수 있으며, 고장이 발생하면 항상 이전 버전을 사용할 수 있습니다. 스크립트에서 "appserv-edge"또는 "appserv-stable"과 같은 별도의 보석 버전 이름을 만들 수도 있습니다.

돈이있는 경우 github의 폐쇄 소스 옵션도 확인해보십시오. 그러나 나는 비옥 한 오픈 소스 프로그램을위한 보석 건물과 호스팅 시설이 있는지 여부를 알지 못합니다.

1

나는 개인용 gemserver를 만들었으며 쉽게 죽었습니다. 유일한 까다로운 점은 사용자가 보석을 업로드하는 방법을 결정하는 것입니다. 개인적으로 PHP 업로드 양식을 사용하고 기존 보석을 가리는 것이 아닌지 확인합니다.

1

내 사무실에서 우리는 공유 스크립트 및 libs에 대해 약간의 하이브리드 방식을 사용하고 있습니다. 그것들을 모두 보석에 묶어 두지 만 보석 서버를 사용하여 소스 제어를 유지 한 다음 보석 (newgem 사용)을 빌드하고 필요에 따라 로컬로 설치합니다.

이 방법의 단점은 보석을 설치하는 데 하나가 아닌 두 개의 명령이 필요하다는 것입니다.하지만 배포시 Capistrano를 사용하기 때문에 qa 및 프로덕션 환경에서 크게 완화되었습니다.

위로 가기 장점은 간단합니다. 개발 중에는 보석을 변경해야하는 작업을하는 경우 매우 짧은 편집/빌드/배포주기가 있습니다. 현재 공유 보석에 공통적 인 기능을 많이 사용하고 있기 때문에 그 점을 정말로 고맙게 생각합니다.