/srv/irclogs.ubuntu.com/2007/02/07/#upstart.txt

=== mbiebl [n=michael@e180100135.adsl.alicedsl.de] has joined #upstart
=== j_ack [n=rudi@p508DAC51.dip0.t-ipconnect.de] has joined #upstart
Keybukso, the one thing I do hate about gcov ...01:22
Keybuk"Merge mismatch for summaries"01:22
mbieblKeybuk: hi01:31
mbiebltested the latest 0.3.2 version01:31
Keybukdid it work?01:31
mbieblWhat I noticed is, that if I renamed a file in /etc/event.d/, initctl list still showed the old (and the new) job name.01:32
mbieblyeah, without problems.01:32
=== j_ack_ [n=rudi@p508DAC51.dip0.t-ipconnect.de] has joined #upstart
Keybukright, rename and delete still aren't fully implemented01:32
mbieblBut besides from that, it's running fine.01:33
mbieblI'll prepare a new Debian release soon.01:34
mbieblI think your rigid test-case based developing pays off.01:35
mbieblI used initng for a while and it often crashed and left an unbootable system.01:35
mbieblNever had that with upstart.01:36
mbieblSo, thumbs up ;-)01:36
mbieblbtw, how was lca?01:36
mbieblSo your talk via video stream01:36
mbiebls/so/saw/01:36
Keybukit seems to have been pretty useful, yeah01:38
KeybukI'm finding it really handy at the moment, as I'm modifying large amounts of code01:38
Keybukyet can be sure that I'm not unexpectedly changing behaviours I wasn't aware of01:38
Keybukjust unexpectedly changing behaviours I hadn't tested <g>01:39
KeybukLCA was pretty cool actually01:39
Keybukis by far my favourite geek conference01:39
mbieblYeah, the programme sounded really interesting, many very interesting people and projects.01:41
Keybukit usually is01:49
Keybukalready thinking up my paper for Melbourne next year01:49
mbieblwhat topic?01:49
Keybukdunno yet01:50
mbieblbtw. have you ever been on linuxtag (germany)?01:51
_ionCongrats for the new release. :-)01:52
KeybukI've never made it to LinuxTag, no01:52
Keybuknor FOSDEM01:54
mbieblWhat a pity. I'm sure you'd have liked it too. Many geeks all over the place ;-)01:54
_ionObviously the best possible place to have such conferences in would be Tampere, Finland.01:54
Keybukyeah, it's one of the ones I keep missing01:54
Keybuktoo many conferences in a year ;p01:55
mbiebl_ion: sounds cold ;-)01:55
KeybukHelsinki was nice01:56
_ionAbout 30C currently. :-)01:56
mbieblargh...01:56
mbieblwinter is currently running crazy here in Germany (+10C)01:58
mbieblI blame it on the global warming effect ;-)01:58
Keybukit's colder here (-7C)01:59
mbieblKeybuk: have you already started work on converting sysv style init scripts to upstart jobs?02:02
Keybukyes, most of the initscripts package02:02
mbieblHave you started with the core system (rcS) or with the multisession part (e.g. hal, dbus etc)?02:03
Keybukcore system and dbus02:03
Keybukmostly because dbus is special and benefits from it02:03
mbieblSo, will the packages itself directly ship the upstart job files or do you keep them inside the the upstart package?02:04
Keybukpretty much the same style as sysvinit02:05
Keybukupstart ships system-services and startup-tasks packages02:05
Keybukthe former is basically what sysvinit ships in inittab02:05
Keybukand the latter is basically the old initscripts package02:05
Keybukother packages then ship upstart jobs02:06
Keybuke.g. dbus ships its own02:06
mbieblLet's take postfix as an example.02:06
mbieblHave you replaced the sysv init script with a upstart job, or do you ship both files?02:06
Keybukpostfix I haven't touched02:07
Keybukif I were, I'd ship just the upstart job02:07
Keybukshipping both is bad, since upstart has the sysv compat stuff :)02:08
mbieblThe reason, why I ask, is that for Debian I'll probably have to go for the second option.02:08
mbieblSo people can switch between sysvinit and upstart.02:08
mbieblAnd I thought about diverting update-rc.d/invoke-rc.d for that reason.02:09
Keybukshipping both gives you the problem that you couldn't ship upstart-compat-sysv02:09
Keybukotherwise upstart would start postfix both natively *and* via sysv-rc02:10
mbieblYeah, that's why I thought about diverting update-rc.d02:10
Keybukright02:10
Keybukthat'd work02:10
Keybukyou'd have to have a magic update-rc.d that "decided" whether the package also shipped an upstart config file02:11
mbieblYeah, exactly.02:11
mbieblIn Ubuntu it will be a bit more easy.02:12
Keybukyeah :)02:13
mbieblBut for Debian I figured this would be the only way to provide a smooth conversion path.02:13
_ionMake a sysvrc compatibility layer for upstart jobs!02:13
_ion;-)02:13
Keybuk_ion: that's called "upstart"02:14
_ionHehe, yeah.02:14
mbieblAnyways, I'm off to bed now.02:17
Keybukg'nite02:17
mbieblAs soon as I have a clearer view how to implement this for Debian, I'll probably pester you again, Keybuk02:17
Keybuksure02:17
mbiebln8 and cu02:17
Keybukoh, heh, some debugging code ended up in 0.3.2 by accident02:24
Keybukinit: main: attach gdb to 1 now02:24
Keybukinit: main: too late02:24
Keybuksweeeeeet02:32
Keybuktest-stop: test failed main02:32
Keybuk(stop)02:32
KeybukEXIT_STATUS = 102:32
Keybuk(from the following job:02:32
Keybuk    start on stop test02:32
Keybuk    script02:32
Keybuk        echo "$UPSTART_JOB: $@"02:32
Keybuk        echo "($UPSTART_EVENT)"02:33
Keybuk        echo "EXIT_STATUS = $EXIT_STATUS"02:33
Keybuk    end script02:33
_ionSome more or less bad ideas for the 'FOO' in 'FOO frodo until bilbo', 'FOO with networking' etc: act, react, work, operate, reflect, respond, go, do, serve, comply, subscribe, yield, pursue, follow, obey02:34
Keybuktricky one, innit02:38
=== AlexExtreme [n=AlexExtr@frugalware/developer/AlexExtreme] has joined #upstart
=== j_ack [n=rudi@p508DAC51.dip0.t-ipconnect.de] has joined #upstart
=== geo1 [n=geo@m198-218.dsl.rawbw.com] has joined #upstart
geo1anyone home?06:26
=== Seveas [n=seveas@ubuntu/member/seveas] has joined #upstart
=== Md [i=md@freenode/staff/md] has joined #upstart
=== Keybuk [n=scott@quest.netsplit.com] has joined #upstart
Keybukmmm, refactoring01:20
Keybuktoday I'm trying to get the event-completion stuff finished01:59
_ion"f*** with networking"02:00
Keybukhmm? :p02:00
_ionPerhaps an expletive would be an appropriate 'FOO' ;-)02:01
Keybukrofl02:01
=== Keybuk just got that
=== Keybuk [n=scott@quest.netsplit.com] has joined #upstart
=== wasabi [n=jhaltom@ubuntu/member/wasabi] has joined #upstart
=== Keybuk takes a decision on state serialisation
_ionA decision?05:44
Keybukyes05:44
Keybukit's kinda broken in the face of event-completion and job-serialisation05:44
Keybukand has needed a rewrite for a while anyway05:44
Keybuk(it uses a pipe and a text dump of the linked lists)05:44
Keybuksince we have a stable IPC protocol, I don't want to close the control socket on restart anymore05:45
Keybukwhich means we can use that to serialise the state05:45
Keybuk(much better tested code, much more efficient)05:45
Keybukand with the rewrite, I can fix the inherent problems with it (dumping linked lists isn't the right way)05:46
Keybukthis won't be compatible with the code from older versions05:46
Keybukhowever, since those aren't tracking anything except the pid of getty ...05:46
Keybuk... I've decided to ignore that05:46
_ionAll right.05:46
Keybukthe apparent bug will be that after updating upstart from current versions to 0.3.5, the state of any registered jobs won't be known05:47
Keybukthey'll all appear to be stopped05:47
AlexExtremethat wouldn't be that much of a problem, would it? the only problem it would cause on an upgrade from edgy to feisty (when it's released) would be that gettys wouldn't be stopped when you restart, no?05:50
Keybukrigh05:51
Keybukt05:51
Keybukthat's what I'm thinking05:51
Keybukthe problem is minor, and can be knowledged-based with "restart your computer"05:51
AlexExtremeyes05:51
AlexExtremeand since on a edgy to feisty upgrade, you'll be prompted to reboot anyway for the kernel being upgraded, most people would hardly notice it05:52
=== Seveas [n=seveas@ubuntu/member/seveas] has joined #upstart
Keybukright05:54
Keybukinitially for feisty, upgrades won't restart upstart05:54
Keybukbut that's ok, because the IPC protocol is stablish now05:54
Keybukand by the time feisty releases, I'll have replaced the restart code05:55
AlexExtremeok05:55
=== AlexExtreme [n=AlexExtr@frugalware/developer/AlexExtreme] has joined #upstart
Keybukicky06:41
Keybukjob->goal_event->event.name06:41
_ionHeh.06:42
Keybuk(where job->goal_event is the EventEmission structure referencing the event currently being handled that caused the job's goal to change ...06:45
Keybuk... I can't think of a better variable name)06:45
wasabiAs an aside, perhaps the ability for an upstart job to reassociate with an already running pid might be interesting?06:50
wasabiActually, shouldn't it?06:51
wasabiWhy would it not know the existing pids?06:51
=== Md [i=md@freenode/staff/md] has joined #upstart
Keybukwhy would it know them?06:59
Keybukexec() has a way of killing all the memory06:59
wasabiwell, thought that stuff would have been serialized to disk on a restart.07:10
Keybukserialised somewhere, certainly07:18
KeybukI Hate Valgrind08:28
=== baze [n=baze@d067119.adsl.hansenet.de] has joined #upstart
Keybukit blatantly ignores its "don't follow children" option09:35
bazehi09:37
Keybukbaze: hi09:37
Keybukwelcome09:37
bazeis upstart already usable for distros other than ubuntu? or will it ever, and is there a rough ETA?09:38
bazei'm using arch here, which uses bsd init scripts... not sure if upstart can handle those09:38
Keybukupstart shipped with Ubuntu 6.10, with a set of jobs that emulate the behaviour of sysvinit09:38
Keybukthis should be quite portable to other distributions09:38
Keybukas all you need do is modify the same set of jobs to match /etc/inittab on that distribution09:38
Keybukwe've had people do it for Fedora, Gentoo, Frugalware, etc. already09:39
bazeso it should be possible already to use it in other distros?09:39
Keybukthat gets you up and running pretty fast09:39
Keybukyes, absolutely09:39
bazecool :)09:39
bazei should give it a try09:39
Keybukthe current release is suitable for deployment maintaining compatibility with the existing init scripts09:40
Keybukthe next major release of upstart is suitable for deployment *replacing* the existing init scripts09:40
bazebut emulating the sysvinit stuff is not really the goal of course ;)09:40
Keybukright09:40
bazeso if i get it running, i should get all the fancy new stuff from upstart too, right?09:40
Keybukbut it was a fantastic way to test the daemon09:40
Keybukshake all the bugs out09:40
Keybukand figure out what we needed09:40
bazeright09:41
Keybukyup, you get the new stuff as well09:41
bazeneat09:41
AlexExtremehmm09:54
AlexExtremelet's try 0.3.209:54
bazehm, arch doesn't use /etc/rcn.d/ and that stuff but only /etc/rc.d with no use of different setups for different runlevels..09:54
Keybukbaze: upstart doesn't try and implement that09:56
Keybukwe cheat, and just run the /etc/init.d/rc shellscript that comes with sysvinit09:56
Keybukarch should have an equivalent shell script that iterates /etc/rc.d09:57
Keybukso just run that :)09:57
AlexExtremearch doesn't09:57
Keybukyou'd probably not need runlevel, telinit, etc.09:57
Keybukand could get away with a simple single job09:57
bazeAlexExtreme is right, there is no such file in /etc/rc.d09:59
AlexExtremeheh10:00
bazedo you use arch too or why did you know that?10:01
AlexExtremeno10:01
AlexExtremeI use Frugalware10:01
bazeothers tried upstart with arch?10:01
bazeah10:01
bazeis there a frugalware package for upstart?10:01
bazecouldn't find one with the package search10:02
AlexExtremeno, there isn't. I'm maintaining it in a seperate repo for the moment, but by 0.7 it will be the default init system10:02
AlexExtremebrb, just gonna test 0.3.210:03
bazefw uses the same init system as arch does, right?10:03
AlexExtremebaze, no10:04
AlexExtremethe only thing we (did) share was pacman10:05
bazeok10:05
bazei don't really know anything about fw besides the pacman stuff, as you see ;)10:05
AlexExtremeand since now we forked pacman because we got sick of the way that pacman was being developed (i.e. remove as many features that aren't completely necessary as possible, and telling us that our patches "aren't valid" without saying why), we share absolutely nothing :)10:06
AlexExtreme</rant>10:06
AlexExtremeand 0.3.2 seems to work great10:07
AlexExtremeKeybuk, would you mind adding Frugalware to the packages section on the upstart website?10:10
bazeso fw uses init.d and rc2.d and so on?10:13
AlexExtremenot init.d10:14
AlexExtreme/etc/rc.d/rc(whatever).d10:14
AlexExtremethe init scripts are in /etc/rc.d10:14
bazeok10:14
AlexExtremewith names like rc.dbus, rc.hald, and so on10:14
bazei see10:14
bazewell, that's pretty much like arch then10:14
bazeexcept the naming is different, if i understand it just a little bit correct ;)10:15
AlexExtremeI wouldn't have thought so10:15
AlexExtremearch simply sticks the scripts in a dir and you configure the ones you want in rc.conf10:15
bazeyep10:15
bazewell anyway, could i have a look at your PKGBUILD? maybe that helps me a bit10:17
AlexExtreme*FrugalBuild :)10:17
bazegna ;p10:17
bazeidc :p10:18
bazefrugalbuild then10:18
AlexExtremehttp://ftp.frugalware.org/pub/other/people/alex/upstart-mess/source/base/upstart/FrugalBuild10:18
bazethanks10:18
AlexExtremeit depends on sysvutils which is here: http://ftp.frugalware.org/pub/other/people/alex/upstart-mess/source/base/sysvutils/FrugalBuild10:18
AlexExtremethat's only for the sysv compat stuff though10:18
AlexExtremeonce the system is upstart-ized sysvutils won't be needed10:18
AlexExtremegotta go10:20
AlexExtremebye10:21
bazebye10:24
KeybukAlexExtreme: wouldn't mind at all, give me a link :)10:37

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!