Співробітник і я зіткнулися з проблемою, про яку ми маємо багато думок.
В даний час у нас є сховище git, в якому ми зберігаємо всі наші чіткі, є близько 20 крон, і вони насправді не пов'язані, за винятком того, що всі вони є маленькими сценаріями пітона і необхідні для певної діяльності. Ми використовуємо fabric.py
файл для розгортання таrequirements.txt
файл для управління вимогами до всіх сценаріїв.
Наша проблема полягає в основному, чи зберігаємо ми всі ці сценарії в одному сховищі git або ми повинні розділяти їх у свої власні сховища? Зберігаючи їх в одному сховищі, їх легше розмістити на одному сервері. Ми можемо використовувати лише один файл cron для всіх сценаріїв.
Однак це відчуває себе неправильно, оскільки 20 крайових завдань не є логічно пов'язаними. Крім того, при використанні одного requirements.txt
файлу для всіх сценаріїв важко зрозуміти, які залежності існують для певного сценарію, і всі вони повинні використовувати однакові версії пакетів.
Ми могли розділити всі сценарії у свої власні сховища, але це створює 20 різних сховищ, які потрібно запам’ятати та мати справу з ними. Більшість із цих сценаріїв не дуже великі, і таке рішення здається непосильним.
Питання пов'язане з тим, чи використовуємо ми один великий файл crontab для всіх кронштейнів, або окремий файл для кожного? Якщо у кожного є свій, як установка одного crontab уникає перезапису інших 19? Це також здається болем, як тоді було б 20 різних файлів cron для відстеження.
Коротше кажучи, наше головне питання полягає в тому, чи зберігаємо ми їх усі в сукупності як одне сховище чи ми їх відокремлюємо у своє сховище зі своїми вимогами.txt та fabfile.py? Ми відчуваємо, що ми, ймовірно, переглядаємо якесь дійсно просте рішення. Чи є простіший спосіб вирішити це питання?