문제

나와 내 팀은 재사용 가능한 몇 가지 스크립트를 구축하기 시작했습니다. 그들은 독점 앱 및 특정 서버 환경에서 작업 할 때만 조직 내에서 재사용 할 수 있습니다. 따라서 Rubyforge 또는 Github 등에 실제로 적합하지 않습니다.

내 질문은 모든 사용자의 최신 및 가장 큰 스크립트를 모두 사용하는 모범 사례는 무엇입니까? 우리는이 스크립트를 한 서버에서 거의 실행하지만 다른 서버로 확장해야 할 수도 있습니다.

우리는 그것들을 보석에 묶고 개인 보석 서버를 시작해야합니까?

또는 일반적이고 공유 가능한 LIB 디렉토리처럼 더 간단한 것. 아마도 SCM에서 다운로드/업데이트 할 스크립트가 있습니까?

다른 아이디어?

감사....

도움이 되었습니까?

해결책

이것은 얼마나 많은 사람들이 코드를 변경하고 싶어하는지 (팀 또는 다른 사람 만) 또는 이것에 대해 얼마나 많은 돈을 가지고 있습니까?

개인적으로 Build+Gem Server를 만들었습니다. 여기서 일부 버전 작성 시스템 (GIT 또는 SVN과 같은 프로젝트 작업중인 사람의 수에 따라 다름)을 사용하여 스크립트를 업로드 한 다음 자동으로 생성되는 CRON 작업을 만들 수 있습니다. 일반적인 간격으로 소스의 보석을 다른 버전으로 보관합니다. 이렇게하면 애플리케이션 보석을 저장하는 저자 서버가 항상 있는지 확인할 수 있으며 무언가가 깨지면 항상 이전 버전을 얻을 수 있습니다. 스크립트는 "AppServ-Edge"또는 "AppServ-Stable"과 같은 별도의 GEM 버전 이름을 만들 수 있습니다.

돈이 있다면 Github의 폐쇄 소스 옵션도 확인할 수도 있습니다. 그러나 그들이 오픈 소스 프로그램을위한 보석 건축 및 호스팅 시설이 있는지 여부는 모르겠습니다.

다른 팁

나는 개인 보석을 만들었고 그것은 쉬운 일입니다. 까다로운 비트는 사용자가 보석을 업로드하기를 원하는 방법을 결정하는 것입니다. 개인적으로 PHP 업로드 양식을 사용하고 기존 보석을 마스킹하지 않도록 확인하십시오.

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

이 접근법의 단점은 GEM을 설치하는 데 하나가 아닌 두 가지 명령이 필요하지만, 이는 Capistrano를 배치에 사용하기 때문에 QA 및 생산 환경에서 크게 완화됩니다.

업시 드는 단순하다는 것입니다. 개발 중에는 보석을 변경 해야하는 작업을 수행하는 경우 매우 짧은 편집/빌드/배포 사이클이 있습니다. 나는 현재 공유 보석으로 많은 공통 기능을 가져오고 있기 때문에 그 측면을 정말로 감사하고 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top