1 # This file collects all the startup jobs needed
2 # for girocco into one place. It can be placed
3 # into the /etc/cron.d/ directory and then the
6 # Alternatively the individual items could be
7 # placed into the repo and root per-user crontabs
8 # or made into a startup script that uses su, but
9 # it's much simpler just to put them in the global
10 # crontab so they're all in one place
12 # IMPORTANT: Be sure to update the users/paths
13 # below before using to match Config.pm!
16 ## girocco tasks that run as root
19 # The ssh daemon for git ssh access in the chroot jail
20 @reboot root cd ~repo/j && /usr/sbin/chroot ~repo/j /sbin/sshd
23 ## girocco tasks that run as repo
26 # Update the gitweb project list cache from Girocco gitweb.list file every 8 minutes
27 # Currently only project creation updates the gitweb.list file
28 */8 * * * * repo /usr/bin/ionice -c3 "$HOME/repomgr/jobs/gitwebcache.sh"
30 # Do a git fetch origin and if any new commits are present on the branch then
31 # merge them in and if successful run make install (but not as root) every 15 minutes.
32 # The branch name to use is hard-coded in updateweb.sh and should be updated before
34 #*/15 * * * * repo /usr/bin/ionice -c3 "$HOME/repomgr/jobs/updateweb.sh"
36 # Kill stale connections every 6 hours
37 0 */6 * * * repo "$HOME/repomgr/toolbox/kill-stale-daemons.pl"
39 # The job daemon and task daemon are run in a screen
40 # The ../screen/screenrc file needs to be installed to
41 # ~repo/.screenrc to support the SCREENCOMMAND functionality.
42 @reboot repo env SCREENCOMMAND='source "$HOME/repomgr/screen/girocco"' SHELL=/bin/bash /usr/bin/screen -d -m