[09:10:34] <StarGate> [notice] bridge "#ada@irc.tpu.ru <-> ada-ru@conference.jabber.ru" is running in limited mode
[10:06:37] <vgodunko> landgraf: ?
[10:10:03] <landgraf> я думал что старгейту нужен хостинг )
[10:25:07] <vgodunko> Да, не помешает.
[10:25:29] <vgodunko> StarGate это python скрипт, известный как xib
[10:25:32] <landgraf> а сейчас он где сидит?
[10:25:42] <vgodunko> На моём домашнем компьютере
[10:26:31] <landgraf> ну так давайте посадим его ко мне на сервер - он 24x7 вполне работает
[10:26:48] <landgraf> стоит в далекой германии с хорошими интернетами )
[10:28:30] <vgodunko> Запросто. Как передать?
[10:29:27] <landgraf> vgodunko, вариант №1 - могу дать ssh, screen там есть , вариант №2 - по почте
[10:29:37] <landgraf> какой удобней
[10:30:18] <landgraf> это виртуалка юзается именно для таких целей - там нет критичного ничего, только mcabber-ы, weechat-ы всякие и прочие
[10:34:20] <vgodunko> Даёшь почтовый адрес! ;-)
[10:34:27] <vgodunko> (только приватно)
[10:38:44] <landgraf> vgodunko done
[10:50:38] <StarGate> [notice] bridge "#ada@irc.tpu.ru <-> ada-ru@conference.jabber.ru" is running in limited mode
[10:50:48] <landgraf> vgodunko, вроде работает
[10:51:39] <landgraf> vgodunko, это почему такое?
[10:51:49] <landgraf> reason: cannotsendtochan
[10:52:18] <landgraf> dnspython
[10:53:31] <StarGate> [notice] bridge "#ada@irc.tpu.ru <-> ada-ru@conference.jabber.ru" is running in limited mode
[10:55:22] <landgraf> => Ignoring XMPP MUC message not received on bot connection.
[10:55:28] <landgraf> это нормально? )
[11:07:00] <landgraf> вопрос по архитектуре - есть некая задача, которая должна запускать другие задачи
[11:07:10] <landgraf> (создавать на лету)
[11:07:51] <landgraf> причем управление должно возвращаться исходной задаче и чтобы она могла запускать еще - как это лучше сделать?
[11:09:04] <vgodunko> new Task
[11:10:43] <landgraf> угу, первая попытка так делать у меня почему-то провалилась, сейчас еще раз попробую )
[11:12:47] <vgodunko> А туча всякого бреда для xib - норма жизни
[11:14:35] <landgraf> vgodunko, а вот тут еще надо будет к каждой задаче обращаться "по имени", мониторить их ну и т.п :(
[11:15:15] <landgraf> vgodunko, ну то есть каждая задача - виртуальная машина + задача, подключенная к qemu-monitor
[11:15:41] <landgraf> естественно manager должен знать сколько ВМ-ок у него запущено и сколько упало,
[11:17:34] <vgodunko> Тут уже кодить придётся.
[11:17:55] <landgraf> а до этого был быдлокодинг? :))
[11:18:03] <vgodunko> :-)
[11:18:04] <тихий бот> vgodunko, ;-)
[11:18:15] <landgraf> в какую сторону читать?
[11:18:20] <vgodunko> Нет, тут придётся работать, задаром механизмов готовых нет
[11:18:38] <vgodunko> А точно нужно по одной задаче на виртуальную машину?
[11:31:54] <landgraf> vgodunko, как-минимум одна задача должна слушать monitor
[11:32:19] <landgraf> вторая (запускающая) может быть non_blocking_spawn, но зачем?
[11:33:53] <vgodunko> Проще в конечном счёте. Многозадачность несколько усложнит конструкцию.
[11:34:56] <landgraf> vgodunko, но увеличит надженость? нет? что произойдет при "падении" единственной задачи? если упадут все виртуалки - не подходит
[11:39:40] <landgraf> 227 lines worth of ugliness that composes the correct command line for running Qemu according to self.conf.
[11:39:45] <landgraf> это ппц простите
[11:39:59] <landgraf> питоновский код доставляет....
[11:40:56] <landgraf> For a reason unknown to me, ``/proc/meminfo`` is is sometime
empty when opened. If that happens, the function retries to open it
3 times.
[11:41:00] <vgodunko> Ничего. Не нужно что бы всё падало :-)
[11:42:03] <vgodunko> Как мониторинг внешних процессов выполняется?
[11:42:44] <landgraf> vgodunko, я вот думал юзать обычный spawn - завершение которого означало бы завершение внешнего процесса
[11:43:17] <landgraf> по-крайней мере тогда можно было бы по завершению анализировать почему это произошло, штатно или нет
[11:43:43] <vgodunko> Аналогичного можно добиться и без task-per-process
[11:43:52] <landgraf> vgodunko, я сейчас курю питоновый код RHEV - вот там много такого, как не надо делать )))
[11:44:49] <landgraf> vgodunko, пытался, но не особо разобрался со всеми этими pid state-file и прочими "прелестями". тем более нужны задачи которые перманентно мониторят qemu-monotor - сокет или fifo
[11:45:20] <vgodunko> Попробуйде "снизойти" до Florist, управление процессами сложнее, но всё под контролем.
[11:45:23] <landgraf> для каждой машины - один монитор
[11:45:47] <landgraf> vgodunko, florist у меня вообще не собирается, да и дата крайнего коммита/релиза смущает
[11:45:58] <vgodunko> Вот такие мониторилки точно можно однозадачными делать.
[11:46:20] <vgodunko> Идея в том, что нужно разделить мониторилку внешних событий и обработчик внешнего события
[11:46:32] <landgraf> vgodunko, а как? одна задача может мониторить 10+ сокетов?
[11:46:47] <vgodunko> select(2) на что дан?
[11:46:58] <landgraf> хм
[11:46:59] <Жаба> landgraf, и не говори
[11:47:03] <vgodunko> poll(2) из той же оперы
[11:48:11] <landgraf> тут получается по два внешних источника событий на машинку - сам процесс и монитор...
[11:48:51] <vgodunko> Нужно смотреть/глядеть.
[11:49:20] <vgodunko> Например, можно: разблокировать SIGPIPE/заставить потоки его генерировать и ждать на waitpid
[11:50:48] <vgodunko> Обратно: разблокировать SIGCHILD, ждать на select
[11:51:32] <landgraf> /me пошел курить POSIX
[11:52:01] <vgodunko> В обоих случаях при поступлении сигнала процессу произойдёт прерывание системного вызова с кодом EINTR
[11:53:14] <vgodunko> Да, кстати... очень плохая новость.
[11:54:09] <vgodunko> POSIX передаёт дескрипторы процесса всем дочерним, поэтому ещё один камень в огород - нужно сделав fork закрыть все потоки и только потом делать exec
[11:54:36] <vgodunko> В многопоточной программе это вааще жёстко, поскольку каждый в свою сторону тянет.
[11:56:40] <vgodunko> Кажется я теперь понимаю как я бы сделал.
[11:56:48] <vgodunko> Задача одна на всё.
[11:57:30] <vgodunko> Два "модуля": один управляет запуском/мониторингом процессов/потоков, второй - обработко полученных события.
[11:57:55] <vgodunko> Среди событий: завершение процесса и получение входных данных.
[11:58:11] <vgodunko> Среди команд: запустить процесс.
[11:58:48] <landgraf> vgodunko, ну я примерно такое делал, сабж меня сбил с пути истинного )
[11:59:03] <landgraf> Жаба, где твой хозяин?
[11:59:30] <landgraf> пока я мучался с полученим pid-а процесса - он мне посоветовал сделать task for process
[12:02:40] <landgraf> vgodunko, а что такое poll ?
[12:09:29] <vgodunko> Навороченный вариант select
[12:23:11] <landgraf> Character'Val(9);
[12:23:18] <landgraf> как из этого сделать стрингу?
[12:23:25] <landgraf> в смысле табуляцию напечатать
[12:29:33] <vgodunko> Закат солнца вручную...
[12:29:48] <vgodunko> ASCII (deprecated) и Ada.Characters.Latin_1 на что даны?
[12:30:21] <vgodunko> (1 => Ada.Characters.Latin_1.HT)
[12:30:47] <landgraf> vgodunko, так я его и юзаю Ada.Characters.Latin_1 в смысле
[12:31:04] <landgraf> хочу добавить к Message : String табуляцции
[12:31:23] <landgraf> ASCII.HT'Img & Message - явно не то )
[12:32:08] <vgodunko> Message & ASCII.HT
[12:32:18] <vgodunko> "&" работает между Character и String
[12:32:28] <landgraf> ыыыы
[12:32:36] <landgraf> а зачем я мучаюсь? )
[12:34:58] <vgodunko> Неведомо это тёмной стороне силы...
[22:27:57] <vgodunko> landgraf: я создал подкаталог packages в Матрёшке.
[22:28:26] <vgodunko> Там можно создать подкаталог Fedora или Fedora-15 или как хочется.
[22:28:40] <vgodunko> Полезу почитать про пакеты для OpenSUSE
[23:13:07] <vgodunko> landgraf: а что за лицензия у directories.gpr или как его там?
[23:18:53] <landgraf> License: Copyright only
[23:19:01] <landgraf> vgodunko, full free license ))
[23:19:23] <landgraf> ппц, пришло письмо в linkedin
[23:19:24] <landgraf> My name is Cam, and I help recruit for the Google.com (SRE) team.
[23:19:46] <landgraf> чо за нах? где я и где гугл?
[23:20:38] <vgodunko> А можно меня в этот файл ткнуть? (опять забыл где он лежит)
[23:21:17] <landgraf> vgodunko, fedora-gnat-project-common - /usr/lib/gnat/directories,gpr
[23:22:21] <vgodunko> А что бы скачать?
[23:23:08] <landgraf> ща
[23:24:16] <landgraf> vgodunko, http://db.tt/F8Owhfj так подойдет?
[23:32:30] <landgraf> vgodunko, http://fpaste.org/EytC/ - это спам? с учетом linkedin (не почта)
[23:35:33] <vgodunko> Не обязательно, но вполне возможно. Начать нужно с чтения профиля типа, приславшего это
[23:36:11] <vgodunko> Блин для OpenSUSE нужно начать с spec для RPM... Что-то мне погруснело...
[23:36:11] <landgraf> vgodunko, профиль очень правдоподобный - гуглится легко
[23:36:27] <vgodunko> Ну тогда вполне возможно и не спам.
[23:36:40] <vgodunko> Таких предложений сотни приходят.
[23:36:44] <landgraf> vgodunko, ну дык любой rpm начинается со spec
[23:37:01] <landgraf> от гугла? что в моем скудном профиле могло заинтересовать гугла?
[23:37:06] <landgraf> или это автоматически?
[23:38:05] <vgodunko> Да что угодно. Поиск сотрудников дело очень сложное.
[23:40:21] <vgodunko> landgraf: тупые вопросы по RPM можно задавать?
[23:40:58] <landgraf> даже нужно )
[23:41:21] <landgraf> все равно тупее моих по аде не будет )))))
[23:43:58] <vgodunko> Щас потягаемся ;-)
[23:44:22] <vgodunko> Пишу %prep %setup, какого фига он пытается ./configure запустить?
[23:46:16] <vgodunko> Фух, это я ошибся, приятно. Умность rpmbuild не имеет предела :-(
[23:47:49] <landgraf> :) в федоре есть набор еще более "умных" утилит
[23:48:03] <vgodunko> Интересно, а можно указать какие пакеты нужны что бы собирать нормально?
[23:48:22] <landgraf> vgodunko, BuildRequires: package1 package2
[23:48:23] <vgodunko> Мне уже страшно
[23:48:56] <landgraf> Requires: - это уже для установки, многие из них генерятся автоматом (в отличии от BR)
[23:49:45] <landgraf> vgodunko, или я неправильно понял вопрос?
[23:50:12] <vgodunko> Правильно, оно даже работает походу
[23:50:22] <vgodunko> Щас, системный gcc-ada поставлю...
[23:52:05] <vgodunko> А libsqlit3-devel и т.д. можно в BuildReq засовывать?
[23:52:41] <landgraf> lf
[23:52:42] <landgraf> да
[23:52:43] <Жаба> landgraf, да нед...
[23:52:45] <landgraf> если нужно
[23:53:37] <landgraf> vgodunko, лучше засунуть по максимуму и сделать один пакет matreshka + много пакетиков с драйверами и пр - пример - мой spec для федорки
[23:54:08] <landgraf> хотя я когда-то заглядывал в спеки от суси - там все как-то по другому
[23:54:58] <vgodunko> Кто бы его ещё в репозиторий засунул ;-)
[23:55:07] <vgodunko> Я бы честно плагиатил...
[23:56:00] <landgraf> vgodunko, так он есть в ReviewRequest
[23:56:12] <landgraf> можно оттуда плагиатить
[23:56:27] <landgraf> могу и засунуть, мне не сложно )