diff options
Diffstat (limited to 'doc')
| -rw-r--r-- | doc/faq.html | 7 | ||||
| -rw-r--r-- | doc/index.html | 5 | ||||
| -rw-r--r-- | doc/overview.html | 10 | ||||
| -rw-r--r-- | doc/s6-rc-bundle.html | 138 | ||||
| -rw-r--r-- | doc/s6-rc-compile.html | 26 | ||||
| -rw-r--r-- | doc/s6-rc.html | 3 | ||||
| -rw-r--r-- | doc/upgrade.html | 13 |
7 files changed, 27 insertions, 175 deletions
diff --git a/doc/faq.html b/doc/faq.html index 23797f1..59b1d82 100644 --- a/doc/faq.html +++ b/doc/faq.html @@ -339,13 +339,6 @@ you don't want up anymore: <tt>s6-rc -p change runlevel-2</tt>. <p> Bundles are easy to use, they're flexible, and they're powerful. They give you the same level of functionality as runlevels would, and more. -You can even add bundles to compiled service databases - including the -live one - or remove bundles from them without having to recompile them: -that's what the <a href="s6-rc-bundle.html">s6-rc-bundle</a> utility is -for. -</p> - -<p> When in doubt, use bundles. </p> diff --git a/doc/index.html b/doc/index.html index 426bdb5..1278c18 100644 --- a/doc/index.html +++ b/doc/index.html @@ -69,8 +69,8 @@ requirement if you link against the shared version of the skalibs library. </li> <ul> <li> The current released version of s6-rc is -<a href="s6-rc-0.6.2.0.tar.gz">0.6.2.0</a>. -You can access its checksum <a href="s6-rc-0.6.2.0.tar.gz.sha256">here</a>. </li> +<a href="s6-rc-0.7.0.0.tar.gz">0.7.0.0</a>. +You can access its checksum <a href="s6-rc-0.7.0.0.tar.gz.sha256">here</a>. </li> <li> Alternatively, you can checkout a copy of the <a href="//git.skarnet.org/cgi-bin/cgit.cgi/s6-rc/">s6-rc git repository</a>: @@ -106,7 +106,6 @@ the previous versions of s6-rc and the current one. </li> <ul> <li> <a href="s6-rc-compile.html">The <tt>s6-rc-compile</tt> program</a> </li> <li> <a href="s6-rc-db.html">The <tt>s6-rc-db</tt> program</a> </li> - <li> <a href="s6-rc-bundle.html">The <tt>s6-rc-bundle</tt> program</a> </li> </ul> <h4> Online tools: managing your live services </h4> diff --git a/doc/overview.html b/doc/overview.html index e563256..1dfd4dc 100644 --- a/doc/overview.html +++ b/doc/overview.html @@ -219,16 +219,6 @@ provided in the packages, an invocation of keep the live state up to date. </p> -<h2> Live bundle modifications </h2> - -<p> - It is possible to change bundle definitions in a compiled service -database, including the live one, without recompiling everything by -calling <a href="s6-rc-compile.html">s6-rc-compile</a>. The -<a href="s6-rc-bundle.html">s6-rc-bundle</a> tool can edit compiled -databases to add bundles to them, or delete bundles from them. -</p> - <h2> Management of source definition directories </h2> <p> diff --git a/doc/s6-rc-bundle.html b/doc/s6-rc-bundle.html deleted file mode 100644 index fbe8d06..0000000 --- a/doc/s6-rc-bundle.html +++ /dev/null @@ -1,138 +0,0 @@ -<html> - <head> - <meta name="viewport" content="width=device-width, initial-scale=1.0" /> - <meta name="color-scheme" content="dark light" /> - <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> - <meta http-equiv="Content-Language" content="en" /> - <title>s6-rc: the s6-rc-bundle program</title> - <meta name="Description" content="s6-rc: the s6-rc-bundle program" /> - <meta name="Keywords" content="s6-rc offline database dump command rc init dependency state management services" /> - <!-- <link rel="stylesheet" type="text/css" href="//skarnet.org/default.css" /> --> - </head> -<body> - -<p> -<a href="index.html">s6-rc</a><br /> -<a href="//skarnet.org/software/">Software</a><br /> -<a href="//skarnet.org/">skarnet.org</a> -</p> - -<h1> The s6-rc-bundle program </h1> - -<p> - s6-rc-bundle is a tool to add or delete bundles from a compiled -service database without having to recompile it from source. -</p> - -<p> - It is an <em>offline tool</em>, i.e. you can run it on any -compiled service database without actually having a live set -of services managed by s6-rc. However, if you do have a live -set, you can still run s6-rc-bundle on the current database (and -it is the default); it won't interfere with your normal service -operation. -</p> - -<h2> Interface </h2> - -<pre> - s6-rc-bundle help - s6-rc-bundle [ -f ] [ -l <em>live</em> ] [ -c <em>compiled</em> ] [ -b ] add <em>bundlename</em> <em>contents...</em> - s6-rc-bundle [ -f ] [ -l <em>live</em> ] [ -c <em>compiled</em> ] [ -b ] delete <em>bundlenames...</em> - s6-rc-bundle [ -f ] [ -l <em>live</em> ] [ -c <em>compiled</em> ] [ -b ] multiple <em>args...</em> -</pre> - -<ul> - <li> s6-rc-bundle expects to find a <em>compiled service database</em> -in <em>compiled</em>; by default it uses the service database -used by the live state in <em>live</em>. </li> - <li> Depending on the arguments, it adds a bundle definition to this database, or -deletes a bundle definition from it, or performs multiple additions/deletions. </li> -</ul> - -<h2> Options </h2> - -<ul> - <li> <tt>-c <em>compiled</em></tt> : operate on a -compiled service database in <em>compiled</em> instead of -the current live one. </li> - <li> <tt>-l <em>live</em></tt> : assume the live -state is in <em>live</em>. This option is ignored if the -<tt>-c</tt> option has been given. Default is -<tt>/run/s6-rc</tt>. The default can be changed at package -compilation time, by giving the <tt>--livedir=<em>live</em></tt> -option to <tt>./configure</tt>. </li> - <li> <tt>-f</tt> : force. s6-rc-bundle will not complain -when given a nonexisting name to delete (it will do nothing), or -when given an existing name to add (it will replace the definition). -By default, s6-rc-bundle will complain and exit when asked to delete a -nonexistent name or to add an existing name. </li> - <li> <tt>-b</tt> : blocking lock. If the database is currently -being used by another program, s6-rc-bundle will wait until that -other program has released its lock on the database, then proceed. -By default, s6-rc-bundle fails with an error message if the database -is currently in use. </li> -</ul> - -<h2> Exit codes </h2> - -<ul> - <li> 0: success </li> - <li> 1: identifier already exists in service database </li> - <li> 3: identifier not found in service database </li> - <li> 4: invalid or corrupted service database </li> - <li> 5: wrong identifier type for the given command </li> - <li> 100: wrong usage </li> - <li> 111: system call failed </li> -</ul> - -<h2> Subcommands </h2> - -<h3> s6-rc-bundle help </h3> - -<p> - Prints a help message on stdout. -</p> - -<h3> s6-rc-bundle add <em>bundlename</em> <em>contents...</em> </h3> - -<p> - Adds a bundle named <em>bundlename</em> to the database, representing -the services listed in <em>contents</em>. The arguments in <em>contents...</em> -are resolved <em>before</em> the database is modified by the -s6-rc-bundle invocation. -</p> - -<h3> s6-rc-bundle delete <em>bundlenames...</em> </h3> - -<p> - Deletes bundles listed in <em>bundlenames...</em>. -</p> - -<h3> s6-rc-bundle multiple <em>args...</em> </h3> - -<p> - Performs multiple bundle deletions and additions. This subcommand is best -used in an <a href="//skarnet.org/software/execline/">execline</a> -script, because it uses -<a href="//skarnet.org/software/execline/el_semicolon.html">blocks</a>. -</p> - -<p> -<em>args...</em> is composed of: -</p> - -<ul> - <li> One block listing bundle names that will be -deleted from the database. </li> - <li> Zero or more addition definitions, each of them composed of: - <ul> - <li> One argument that is the name of the bundle to add </li> - <li> One block listing the services contained in the -new bundle. The names in the block are resolved before any addition -or deletion is made to the database. </li> - </ul> </li> -</ul> - -</body> -</html> diff --git a/doc/s6-rc-compile.html b/doc/s6-rc-compile.html index 07625ac..d207b6c 100644 --- a/doc/s6-rc-compile.html +++ b/doc/s6-rc-compile.html @@ -198,30 +198,30 @@ complain and exit 1. <h4> For oneshots </h4> <ul> - <li> Two regular files named <tt>up</tt> and <tt>down</tt>, which -must each contain a single Unix command line. The files will be interpreted by the + <li> Three regular files named <tt>up</tt>, <tt>down</tt>, and <tt>reload</tt>, +which must each contain a single Unix command line. The <tt>up</tt> file is +mandatory, the other two are optional; if they are absent, they are considered +empty, i.e. nothing happens when the corresponding script is executed and the +operation is considered a success. +The files will be interpreted by the <a href="//skarnet.org/software/execline/execlineb.html">execlineb</a> lexer at compile time and the results will be stored into the compiled database in an internal form. <tt>up</tt> will be run when -the service is started, and <tt>down</tt> will be executed when the service -is stopped. <tt>up</tt> is mandatory, but <tt>down</tt> is optional; -if no <tt>down</tt> file is provided in the source definition directory, -then it is treated as the empty script. If a script is empty, -then s6-rc will consider that the corresponding transition for this service -does nothing and always succeeds. </li> +the service is started, <tt>down</tt> will be executed when the service +is stopped, and <tt>reload</tt> will be executed when the service is +reloaded </li> </ul> <p> - <tt>up</tt> and <tt>down</tt> are interpreted by + <tt>up</tt>, <tt>down</tt> and <tt>reload</tt> are interpreted by <a href="//skarnet.org/software/execline/execlineb.html">execlineb</a>, but that does not mean they have to be entirely written in the <a href="//skarnet.org/software/execline/">execline</a> language. The <a href="//skarnet.org/software/execline/execlineb.html">execlineb</a> lexer is only used because it can compile a Unix command line from a text file and store the compiled result, whereas a shell would have to be invoked -everytime the script is run. There are many ways to write <tt>up</tt> and -<tt>down</tt> scripts: +everytime the script is run. There are many ways to write these scripts: </p> <ul> @@ -239,8 +239,8 @@ while <tt>down</tt> contains <tt>/etc/init.d/<em>service</em> stop</tt>, and <p> Don't think you have to learn all the intricacies of the execline language -just because the <tt>up</tt> and <tt>down</tt> scripts get lexed by it. -You don't. +just because the <tt>up</tt>, <tt>down</tt> and <tt>reload</tt>scripts get +lexed by it. You don't. </p> <h4> For longruns </h4> diff --git a/doc/s6-rc.html b/doc/s6-rc.html index bb16113..afd6795 100644 --- a/doc/s6-rc.html +++ b/doc/s6-rc.html @@ -252,8 +252,7 @@ given on the command line, which must all be up. For a longrun, <tt>s6-rc reload</tt> sends an <a href="//skarnet.org/software/s6/s6-svc.html">s6-svc -l</a> command to the service, which causes it to receive a SIGHUP, or any overriding signal configured in the <tt>reload-signal</tt> file. -For a oneshot, the service's <tt>up</tt> script is executed, with -an additional <tt>RC_RELOAD</tt> environment variable containing 1. +For a oneshot, the service's <tt>reload</tt> script is executed. </p> <p> diff --git a/doc/upgrade.html b/doc/upgrade.html index 0aac5cf..f61933c 100644 --- a/doc/upgrade.html +++ b/doc/upgrade.html @@ -31,7 +31,7 @@ minor and bugfix version changes. <h1> What has changed in s6-rc </h1> -<h2> in 0.6.2.0 </h2> +<h2> in 0.7.0.0 </h2> <ul> <li> <a href="//skarnet.org/software/skalibs/">skalibs</a> @@ -39,8 +39,17 @@ dependency bumped to 2.15.0.1. </li> <li> <a href="//skarnet.org/software/execline/">execline</a> dependency bumped to 2.9.9.2. </li> <li> <a href="//skarnet.org/software/s6/">s6</a> -dependency bumped to 2.15.0.1. </li> +dependency bumped to 2.15.1.0. </li> <li> New <a href="s6-rc.html">s6-rc reload</a> command. </li> + <li> The database format has changed! To safely upgrade a running s6-rc installation: + <ul> + <li> Compile your current live database from the <strong>same source</strong> +using the latest <a href="s6-rc-compile.html">s6-rc-compile</a> </li> + <li> Run the latest <a href="s6-rc-format-upgrade.html">s6-rc-format-upgrade</a> with the +newly obtained database </li> + <li> Run the latest <a href="s6-rc-update.html">s6-rc-update</a> with the same database </li> + <li> Your system is now running the latest version of s6-rc; you can delete your old database </li> + </ul> </ul> <h2> in 0.6.1.1 </h2> |
