upstart po ostatnich zmianach...
Jacek Konieczny
jajcus w jajcus.net
Pon, 14 Cze 2010, 08:16:50 CEST
On Sun, Jun 13, 2010 at 10:33:07PM +0200, Pawel Golaszewski wrote:
> On Sun, 13 Jun 2010, Jacek Konieczny wrote:
> > Mógłbyś spróbować odpalić tam upstarta z tego brancha:
> >
> > https://code.launchpad.net/~jajcus-jajcus/upstart/state-save-stable
> >
>
> A możesz wrzucić to na branch-a jakiegoś do cvs-u? :) będzie prościej :)
Nie ma sensu wrzucać tego gdziekolwiek poza launchpad, bo te zmiany
stracą wszelki sens jak nie zostaną przyjęte do upstream, a zamiast tego
wejdzie coś innego. Czekam na review chociaż…
> BTW - inna rzecz mi się rzuciła w oczy, która jest problematyczna.
> Chodzi o zmienne, na przykładzie pliku upstart-a z cronie będzie to
> CROND_MAIL_PROG.
>
> Te same zmienne są ustawiane dwojako:
> - w pliku /etc/init/<service>.conf
> - w pliku /etc/sysconfig/<service>
>
> To będzie powodowało problemy ("które jest nadrzędne?", "dlaczego
> ustawiłem, a nie działa?"...). Dodatkowo poprawki w nowszych wersjach
> skryptu startowego (/etc/init/<service>.conf) będą tylko jako rpmnew.
> Na coś trzeba się zdecydować i sysconfig będzie tu lepsze.
Ta… zamiast 'limit' itp. ustawień w *.conf, też proponujesz jakieś
SERVICE_ULIMITS w /etc/sysconfig/<service> itd? I w ogóle zamiast
prostego 'exec ...' wrzucić cały skrypt zaczynający się od:
. /etc/rc.d/init.d/functions
. /etc/sysconfig/service
? To właściwie po co bawić się w Upstart, jeżeli skończym na czymś co od
obecnych rc.d/init.d/* nie wiele będzie się różnić?
Upstart ma uprościć sprawę. Załatwić sam z siebie to, co teraz rzeźbimy
górą skryptów shellowych. SysVinit nie dawał nawet namiastki takiej
możliwości, Upstart, choć wciąż daleki od ideału, daje znacznie więcej.
Czytanie /etc/sysconfig/* dodałem to niektórych upstartowych jobów tylko
dla backward-compatibility.
Dlatego moim założeniem było: starać się, żeby pliki
/etc/init/<service>.conf były jak najprostsze i traktować je jako pliki
konfiguracyjne (/etc/rc.d/init.d/* też były kiedys %config, ale potem
się okazało, że to więcej kodu niż konfiguracji…)
Idealnie by było, jakby Upstart pozwalał mieć i szablon joba (gdzieś w
/lib/cośtam i /usr/share/cośtam, powiedzmy) a w /etc/init/*.conf można
było tylko uzupełnić joba o konfigurację (ale też podmienić skrypty, gdy
jest taka potrzeba). Niestety, na razie takiej możliwości nie ma i
trzeba całe *.conf traktować jako konfigurację.
Pozdrowienia,
Jacek
Więcej informacji o liście dyskusyjnej pld-devel-pl