동료와 나 자신은 우리가 여러 의견을 가지고있는 문제에 부딪쳤다.
현재 우리는 모든 크론 작업을 유지하는 git 저장소를 가지고 있습니다. 약 20 개의 크론이 있으며 작은 크론 스크립트이며 일부 활동에 필수적이라는 사실을 제외하고는 실제로 관련이 없습니다. 우리는 사용하고 fabric.py배포 할 파일과 requirements.txt파일은 모든 스크립트에 대한 요구 사항을 관리 할 수 있습니다.
우리의 문제는 기본적으로 모든 스크립트를 하나의 자식 저장소에 보관합니까, 아니면 자체 저장소로 분리해야합니까? 하나의 저장소에 보관하면 하나의 서버에 배치하기가 더 쉽습니다. 모든 스크립트에 하나의 cron 파일 만 사용할 수 있습니다.
그러나 20 개의 cronjob이 논리적으로 관련이 없기 때문에 이것은 잘못된 느낌입니다. 또한 requirements.txt모든 스크립트에 대해 하나의 파일을 사용 하는 경우 특정 스크립트에 대한 종속성이 무엇인지 파악하기가 어렵고 모두 동일한 버전의 패키지를 사용해야합니다.
모든 스크립트를 자체 리포지토리로 분리 할 수 있지만 기억하고 처리해야하는 20 개의 리포지토리가 생성됩니다. 이러한 스크립트의 대부분은 크지 않으며 해당 솔루션은 과도하게 보입니다.
관련된 질문은 모든 cronjob에 대해 하나의 큰 crontab 파일을 사용합니까, 아니면 각각에 대해 별도의 파일을 사용하는 것입니까? 각각에 고유 한 것이 있다면, 하나의 crontab 설치가 다른 하나의 crontab을 어떻게 덮어 쓰지 않습니까? 또한 20 개의 다른 크론 파일을 추적 할 때처럼 고통스러워 보입니다.
요컨대, 우리의 주요 질문과 문제는 그것들을 모두 하나의 저장소로 밀접하게 묶어 두는가? 또는 그들 자신의 requirements.txt와 fabfile.py를 사용하여 그것들을 자신의 저장소로 분리 하는가? 우리는 아마도 정말 간단한 해결책을 찾고 있다고 생각합니다. 이 문제를 해결하는 더 쉬운 방법이 있습니까?