Comments 27
для создания daemon процессов мог бы использовать вот этот пакет pypi.python.org/pypi/python-daemon
+6
а есть документация по этому пакету? или какое-нибудь howto?
0
а зачем доки там всего пару строк чтоб его использовать
import daemon
from spam import do_main_program
with daemon.DaemonContext():
do_main_program()
+1
spam это я так понимаю типа-мой-модуль?
0
да
+1
а как запустить этот скрипт?
просто python my_script.py?
просто python my_script.py?
0
и еще вопросы)
2. Как остановить?
3. Как указать, что нужна одна копия?
2. Как остановить?
3. Как указать, что нужна одна копия?
0
Для получения изменения удобнее использовать деплой
0
gitnotify выполняет отсылку писем, а не нотификацию, как тут.
кстати, со своей стороны, рекомендую взглянуть на bitboxer.github.com/git-commit-notifier/
кстати, со своей стороны, рекомендую взглянуть на bitboxer.github.com/git-commit-notifier/
0
ну вот, появился хоть один коммент, а то одни минусы :)
Да, но мне кажется отсылка писем, в таком деле как оповещение о коммитах более удобней и функциональней.
я как разработчик (и немного админ своих серверов) не всегда нахожусь за одним компьютером, да и вообще могу быть на телефоне, поэтому получая оповещения по почте я знаю, что не пропущу ни одно из них, на каком бы устройстве я его не просмотрел.
Да и удобно складывать эти оповещения в папочку «на всякий пожарный»
Я использую gitnotify вместе с etckeeper'ом на каждом сервере, и всегда знаю, что где меняется.
За ссылку спасибо — посомотрю
Да, но мне кажется отсылка писем, в таком деле как оповещение о коммитах более удобней и функциональней.
я как разработчик (и немного админ своих серверов) не всегда нахожусь за одним компьютером, да и вообще могу быть на телефоне, поэтому получая оповещения по почте я знаю, что не пропущу ни одно из них, на каком бы устройстве я его не просмотрел.
Да и удобно складывать эти оповещения в папочку «на всякий пожарный»
Я использую gitnotify вместе с etckeeper'ом на каждом сервере, и всегда знаю, что где меняется.
За ссылку спасибо — посомотрю
+1
Для реализации задачи был выбран язык Python (высокоуровневый, интерпретируемый, объектно-ориентированный и расширяемый язык программирования), так как я его не знаю.
Что ж вы будете делать, когда языки-то кончатся…
+1
На заметку: чтобы не опрашивать репозитории, научите демона ловить, к примеру, широковещательные сообщения, разбрасывать которые будет post-commit хук git.
+2
А если следить за десятью репозиториями и ждать коммита от неизветсного человека?
-2
Можно в повседневной работе использовать code review. Тогда ссылки на новые коммиты будут вам на почту падать. Будучи тимлидом, вы сможете их ревьювить. Да, кстати, и не только тимлидом.
Цель использование данного демона?
Все равно после коммита уже сложно что-то исправить без костылей.
Цель использование данного демона?
Все равно после коммита уже сложно что-то исправить без костылей.
+2
а мне нравится. just for fun и обучение/опыт. мог бы — плюсанул.
+3
Доложите объём оперативной памяти, занимаемой этим демоном, и стоили ли того эти мегабайты?
-2
def setLastCheckTime(self, time = None):
subprocess.check_output('touch ' + __file__, shell=True)
OMG… При правильной установке у файла будет овнер root:root и права
rwxr--r--
. Никакой touch вы ему не сделаете. Либо создайте отдельный файл и в него пишите дату последней проверки либо сохраняйте эту дату внутри объекта GitPushNotify()
if listGroup.has_key(i)
has_key уже deprecated. Пользуйтесь if i in listGroup
В питоне по крайней мере, принято в CamelCase писать только названия классов, все остальное через_подчеркивание.
А в целом, если говорите что на Python раньше не писали — очень даже не плохо.
+5
Может кому пригодится:
При заходе через ssh/НЕ из виртуального терминала 7 получается все так:
Соответственно это лечится указыванием display, куда отправлять:
Теперь работает.
При заходе через ssh/НЕ из виртуального терминала 7 получается все так:
lomalkin@lomalkin-qdbook:~$ notify-send "Habr"
GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed
aborting...
Аварийный останов
Соответственно это лечится указыванием display, куда отправлять:
lomalkin@lomalkin-qdbook:~$ DISPLAY=:0 notify-send "Habr"
Теперь работает.
0
Буквально недавно написал примерно такую же штуку, только на Perl. Использует веб-хуки гитхаба (висит на порту и ждет HTTP POST от github), отсылает по XMPP заинтересованным пользователям сообщения о коммитах, тикетах, пулл-реквестах и комментариях в репозитории (на комментарий можно ответить от своего имени прямо из XMPP-клиента, если настроить OAuth-токен)
0
Only those users with full accounts are able to leave comments. Log in, please.
Python на примере демона уведомления о новых коммитах Git