[opensuse-buildservice] obsworker fails to automatically start on reboot

Im using openSUSE 10.3 32bit. Ive followed the instructions at http://en.opensuse.org/Build_Service/Build_Service_Installation_Tutorial/ope... to setup a local build server. In Yast->System->System Services (Runlevel), I have enabled obsworker to start in runlevels 3 and 5. On rebooting the machine, the obsworker fails to start. How can I get the obsworker to start automatically after a reboot? Razi --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org

On Fri, Nov 16, 2007 at 04:23:25PM -0500, Razi Khaja wrote:
Im using openSUSE 10.3 32bit. Ive followed the instructions at http://en.opensuse.org/Build_Service/Build_Service_Installation_Tutorial/ope... to setup a local build server.
In Yast->System->System Services (Runlevel), I have enabled obsworker to start in runlevels 3 and 5. On rebooting the machine, the obsworker fails to start.
Maybe the repository server isn't already running when obsworker gets started. Cheers, Michael. -- Michael Schroeder mls@suse.de SUSE LINUX Products GmbH, GF Markus Rex, HRB 16746 AG Nuernberg main(_){while(_=~getchar())putchar(~_-1/(~(_|32)/13*2-11)*13);} --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org

In Yast->System->System Services (Runlevel), I have enabled obsworker to start in runlevels 3 and 5. On rebooting the machine, the obsworker fails to start.
Maybe the repository server isn't already running when obsworker gets started.
The obsrepserver, obssrcserver and obsscheduler are all running on a reboot. Only obsworker isn't started automatically. If obsworker depends on obsrepserver already running how would that dependency be specified? --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org

On Fri, Nov 16, 2007 at 05:09:49PM -0500, Razi Khaja wrote:
In Yast->System->System Services (Runlevel), I have enabled obsworker to start in runlevels 3 and 5. On rebooting the machine, the obsworker fails to start.
Maybe the repository server isn't already running when obsworker gets started.
The obsrepserver, obssrcserver and obsscheduler are all running on a reboot. Only obsworker isn't started automatically. If obsworker depends on obsrepserver already running how would that dependency be specified?
/etc/init.d/obsworker should contain 'obsrepserver' in the 'Should-Start' section, i.e. add the line Should-Start: obsrepserver right after the Required-Start line and run 'insserv /etc/init.d/obsworker'. If you then do 'ls /etc/init.d/rc3.d' you should see that obsworker has a bigger number than obsrepserver. Cheers, Michael. -- Michael Schroeder mls@suse.de SUSE LINUX Products GmbH, GF Markus Rex, HRB 16746 AG Nuernberg main(_){while(_=~getchar())putchar(~_-1/(~(_|32)/13*2-11)*13);} --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org

/etc/init.d/obsworker should contain 'obsrepserver' in the 'Should-Start' section, i.e. add the line
Should-Start: obsrepserver
right after the Required-Start line and run
/etc/init.d/obsworker has been modified to include the Should-Start as below. ### BEGIN INIT INFO # Provides: obsworker # Required-Start: $time $network $syslog # Should-Start: obsrepserver # Required-Stop: # Default-Start: 3 5 # Default-Stop: 0 1 2 4 6 # Description: openSUSE build service worker ### END INIT INFO #ls -la /etc/rc.d/rc3.d/*obs* lrwxrwxrwx 1 root root 15 2007-11-16 01:08 /etc/rc.d/rc3.d/K08obsscheduler -> ../obsscheduler lrwxrwxrwx 1 root root 12 2007-11-16 17:47 /etc/rc.d/rc3.d/K08obsworker -> ../obsworker lrwxrwxrwx 1 root root 15 2007-11-16 01:08 /etc/rc.d/rc3.d/K09obsrepserver -> ../obsrepserver lrwxrwxrwx 1 root root 15 2007-11-16 01:08 /etc/rc.d/rc3.d/K09obssrcserver -> ../obssrcserver lrwxrwxrwx 1 root root 15 2007-11-16 01:08 /etc/rc.d/rc3.d/S13obsrepserver -> ../obsrepserver lrwxrwxrwx 1 root root 15 2007-11-16 01:08 /etc/rc.d/rc3.d/S13obssrcserver -> ../obssrcserver lrwxrwxrwx 1 root root 15 2007-11-16 01:08 /etc/rc.d/rc3.d/S14obsscheduler -> ../obsscheduler lrwxrwxrwx 1 root root 12 2007-11-16 17:47 /etc/rc.d/rc3.d/S14obsworker -> ../obsworker #ls -la /etc/rc.d/rc5.d/*obs* lrwxrwxrwx 1 root root 15 2007-11-16 01:08 /etc/rc.d/rc5.d/K08obsscheduler -> ../obsscheduler lrwxrwxrwx 1 root root 12 2007-11-16 17:47 /etc/rc.d/rc5.d/K08obsworker -> ../obsworker lrwxrwxrwx 1 root root 15 2007-11-16 01:08 /etc/rc.d/rc5.d/K09obsrepserver -> ../obsrepserver lrwxrwxrwx 1 root root 15 2007-11-16 01:08 /etc/rc.d/rc5.d/K09obssrcserver -> ../obssrcserver lrwxrwxrwx 1 root root 15 2007-11-16 01:08 /etc/rc.d/rc5.d/S13obsrepserver -> ../obsrepserver lrwxrwxrwx 1 root root 15 2007-11-16 01:08 /etc/rc.d/rc5.d/S13obssrcserver -> ../obssrcserver lrwxrwxrwx 1 root root 15 2007-11-16 01:08 /etc/rc.d/rc5.d/S14obsscheduler -> ../obsscheduler lrwxrwxrwx 1 root root 12 2007-11-16 17:47 /etc/rc.d/rc5.d/S14obsworker -> ../obsworker
If you then do 'ls /etc/init.d/rc3.d' you should see that obsworker has a bigger number than obsrepserver.
I read http://www.novell.com/coolsolutions/feature/11256.html So now I know that: "The 'K' means that the script is executed with a "stop" argument when leaving the runlevel. A 'S' means the script is executed with a "start" argument when entering the runlevel. The numbers determine the order in which the scripts are executed." So S14 is bigger than S13, so thats good, but obsworker still does not start after a reboot. When starting obsworker using the Yast System Services (Runlevel) module, a dialog explains the boot.clock needs to be started. Could this be a hint as to some other dependency. How should this dependency be dealt with (in Required-Start or Should-Start or some other place)? Or is there some other reason why obsworker does not start? --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org

When starting obsworker using the Yast System Services (Runlevel) module, a dialog explains the boot.clock needs to be started.
I realize that this could be done with insserv /etc/init.d/obsworker, only that insserve does not tell me that it needs to start boot.clock. In any case, I understand that I could use either one. --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org

Michael Schroeder <mls@suse.de> writes:
/etc/init.d/obsworker should contain 'obsrepserver' in the 'Should-Start' section, i.e. add the line
Should-Start: obsrepserver
I'd like to fix this for all the init scripts in the packages... I understand the Should-Start makes more sense than the Required-Start because the services can be distributed amongst different machines, right? Where can I find documented which service needs which one? This is what I figured so far, is that correct? srcserver: store and serve sources reposerver: store and serve binaries (rpm, deb, ...) frontend: access src and repo server from remote webservice: use frontend via web interface worker: be available to rebuild things access repo server to do rebuilds access source server? or are the sources pushed to the worker? scheduler: notice source changes and figure what needs to be rebuilt in which order how are srcserver, build jobs and dispatcher: distribute to the workers what the scheduler figured publisher: publish repos after builds signing? making a bunch of rpms into a true repo? I've tried to find this documented somewhere, in the wiki or in documentation/books/en/xml/MAIN.Build_Service.xml and friends. Did I look at the wrong places ore are they both very much WIP? If they are, I'd like to focus to one place and I volunteer to document it there. I'd personally prefer the wiki which is easyer to access even if it has less expressive power. S. -- Susanne Oberhauser +49-911-74053-574 SUSE -- a Novell Business OPS Engineering Maxfeldstraße 5 Processes and Infrastructure Nürnberg SUSE LINUX Products GmbH, GF: Markus Rex, HRB 16746 (AG Nürnberg) --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org

I've tried to find this documented somewhere, in the wiki or in documentation/books/en/xml/MAIN.Build_Service.xml and friends. Did I look at the wrong places ore are they both very much WIP?
If they are, I'd like to focus to one place and I volunteer to document it there. I'd personally prefer the wiki which is easyer to access even if it has less expressive power.
I'd like to volunteer my time as well to contribute to the documentation. There is some documentation on the wiki at: http://en.opensuse.org/Build_Service/Build_Service_Installation_Tutorial/ope... This doesnt describe the architecture of the build service, but you might be able to glean some information from there.
From the above link: " Start the Services Start the following services in this order. WARNING: The following starts services which are accessable from the outside.
Do not do this on a system connected to an untrusted network or be sure to block the ports via a firewall. # rcobsrepserver start # rcobssrcserver start # rcobsscheduler start" Below are the INIT INFO blocks for obsrepserver, obssrcserver obsscheduler and obsworker which are the "head" of the /etc/init.d/obs* scripts ===== ===== obsrepserver ===== ===== ### BEGIN INIT INFO # Provides: obsrepserver # Required-Start: $time $syslog # Required-Stop: # Default-Start: 3 5 # Default-Stop: 0 1 2 4 6 # Description: openSUSE build service repository server ### END INIT INFO ===== ===== obssrcserver ===== ===== ### BEGIN INIT INFO # Provides: obssrcserver # Required-Start: $time $syslog # Required-Stop: # Default-Start: 3 5 # Default-Stop: 0 1 2 4 6 # Description: openSUSE build service source repository server ### END INIT INFO As you can see obsrepserver and obssrcserver have the same Require-Start and dont depend on each other. ===== ===== obsscheduler ===== ===== ### BEGIN INIT INFO # Provides: obsscheduler # Required-Start: $time $syslog obssrcserver obsrepserver # Required-Stop: # Default-Start: 3 5 # Default-Stop: 0 1 2 4 6 # Description: openSUSE build service scheduler ### END INIT INFO obsscheduler requires that obssrcserver and obsrepserver are started (so thats one dependency) obsrepserver, obssrcserver and obsscheduler are started without problems on reboot (actually I noticed that sometimes obsscheduler does not start, but I dont really want to say anything about that right now). ===== ===== obsworker ===== ===== ### BEGIN INIT INFO # Provides: obsworker # Required-Start: $time $network $syslog # Required-Stop: # Default-Start: 3 5 # Default-Stop: 0 1 2 4 6 # Description: openSUSE build service worker ### END INIT INFO
/etc/init.d/obsworker should contain 'obsrepserver' in the 'Should-Start' section, i.e. add the line
Should-Start: obsrepserver
I'd like to fix this for all the init scripts in the packages...
I understand the Should-Start makes more sense than the Required-Start because the services can be distributed amongst different machines, right?
I modified my obsworker script to include the Should-Start directive but that didnt start the obsworker on reboot. Since im running my obsworker on the same machine (im actually trying to build a single xen vm as a local obs server) as the other obs* services, I also tried: # Required-Start: $time $syslog obssrcserver obsrepserver obsscheduler <-- in obsworker's INIT INFO block This didnt start my obsworker on reboot either. Hope we can get to the bottom of this. Razi --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
participants (3)
-
Michael Schroeder
-
Razi Khaja
-
Susanne Oberhauser