mirror of
https://github.com/troglobit/finit.git
synced 2026-11-01 13:10:32 +00:00
doc: convert the documentation to the block format
The syntax overview no longer describes a line-based format, since that is not what the rest of the documentation shows. It now covers the grammar, the two naming conventions, the nine aliases, and the leading '-' on a path, and it says plainly that both formats are still read and told apart per file by content. Without that, a reader with an existing configuration is left wondering what happened to it. service-opts.md was a list of modifiers to place between a directive and its command, so it needed rewriting rather than translating: there are no positions left to describe. It is now grouped by what the settings do. conditions.md needed correcting. It presented '!' as a condition prefix alongside '~'. It is neither a condition nor a negation, it is a flag on the block that means one thing on a service and another on a run or task, so it is spelled reload-signal and required here, and the page maps the old form to both. Two things the pages claimed are not true. The kill delay range is 1-300, not 1-60, and stop and reload scripts are no longer run without a timeout. ChangeLog.md keeps its line-based examples. Those sit in historical release entries, and rewriting them in a syntax that did not exist at the time would misdate the format. Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
This commit is contained in:
20 files changed
+790
-352
No files matched your search
+30
-9
@@ -27,13 +27,22 @@ Finit can *not* start and monitor a daemon that:
|
||||
|
||||
### Forks to bg w/ PID file
|
||||
|
||||
There are two syntax variants, type 1 and type 2. The former is the
|
||||
traditional one used also for `sysv` start/stop scripts, and the latter
|
||||
is inspired by systemd, with a twist -- it lets Finit guess the pifdile
|
||||
to look for based on the standard path and the basename of the command.
|
||||
There are two variants. The former names the pidfile to watch, as for
|
||||
`sysv` start/stop scripts, and the latter is inspired by systemd, with a
|
||||
twist -- it lets Finit guess the pidfile based on the standard path and
|
||||
the basename of the command.
|
||||
|
||||
service pid:!/run/serv.pid serv -- Forking service, type 1
|
||||
service type:forking serv -- Forking service, type 2
|
||||
service serv {
|
||||
description = "Forking service, type 1"
|
||||
pidfile = "/run/serv.pid"
|
||||
command = "serv"
|
||||
}
|
||||
|
||||
service serv {
|
||||
description = "Forking service, type 2"
|
||||
type = "forking"
|
||||
command = "serv"
|
||||
}
|
||||
|
||||
In this example the resulting files to watch for are `/run/serv.pid` and
|
||||
`/var/run/serv.pid`, respectively. On most modern Linux systems this is
|
||||
@@ -41,17 +50,29 @@ the same directory (`/var/run` is a symlink to `../run`).
|
||||
|
||||
### Runs in fg w/ PID file
|
||||
|
||||
service serv -n -p -- Foreground service w/ PID file
|
||||
service serv {
|
||||
description = "Foreground service w/ PID file"
|
||||
command = "serv -n -p"
|
||||
}
|
||||
|
||||
### Runs in fg w/o PID file
|
||||
|
||||
Same as previous, but we tell Finit to create the PID file, because we
|
||||
need it to synchronize start/stop of a dependent service.
|
||||
|
||||
service pid:/run/serv.pid serv -n -- Foreground service w/o PID file
|
||||
service serv {
|
||||
description = "Foreground service w/o PID file"
|
||||
pidfile = "/run/serv.pid"
|
||||
pidfile-create = true
|
||||
command = "serv -n"
|
||||
}
|
||||
|
||||
### Runs in fg w/ custom PID file
|
||||
|
||||
service pid:/run/servy.pid serv -n -p -P /run/servy.pid -- Foreground service w/ custom PID file
|
||||
service serv {
|
||||
description = "Foreground service w/ custom PID file"
|
||||
pidfile = "/run/servy.pid"
|
||||
command = "serv -n -p -P /run/servy.pid"
|
||||
}
|
||||
|
||||
[1]: config/service-sync.md
|
||||
Reference in new issue
Block a user