Use dynamic "root"/prefix
[gitorious:gitorious-daemons.git] / readme.org
1 * Gitoriousd – the Gitorious daemon
2    - Main executable in /usr/sbin/gitorious
3      Responds to normal start, stop, status, restart, reload
4    - Pids in /var/run/gitorious/$service.pid
5    - Executables in /usr/libexec/gitorious/$service. All executable files in here will be run
6    - /etc/gitorious.conf contains (at least) GITORIOUS_ROOT
7
8    Each process should respond to {start,stop,status,restart,reload} and emit
9    relevant exit codes
10
11 #+BEGIN_EXAMPLE
12 gitorious start: Starts all (non-running) processes from libexec
13 gitorious stop: Sends SIGQUIT to all running processes
14 gitorious restart: stop && restart
15 gitorious reload: Sends SIGHUP to all processes, which will cause them to reload config
16 [gitorious logrotate: Sends SIGUSR1 to all processes, which will cause them to reopen log files]
17 #+END_EXAMPLE
18 ** Which daemons?
19 *** TODO git-daemons
20 *** TODO git-proxy
21 *** TODO unicorn
22 *** TODO searchd
23 *** DONE resque-worker
24 ** Main scenarios
25 *** System startup: start all associated daemons
26     - [ ] Start all tasks
27     - [ ] Ignore running tasks (ie don't restart any tasks)
28 *** System shutdown: stop all associated daemons
29     - [ ] Stop all tasks
30     - [ ] Ignore ones that aren't running (ie. don't complain)
31 *** Check status
32     - [ ] UP or DOWN
33 *** Log rotation
34     - [ ] "Reload" all running tasks
35     - [ ] Ignore ones that aren't running (ie. don't start any tasks)
36 *** Restart (after code updates etc)
37     - [ ] Restart all tasks
38     - [ ] Start the ones that aren't running