summary refs log tree commit diff
path: root/doc/guix.texi
diff options
context:
space:
mode:
authorMarius Bakke <marius@gnu.org>2021-10-31 22:52:06 +0100
committerMarius Bakke <marius@gnu.org>2022-11-03 20:00:30 +0100
commit706f25f24dab13dff69e7977b5d84269c1dfa293 (patch)
tree09f32832ab02b530a2f5cc98f984cfb610cac058 /doc/guix.texi
parent614a92cae84dbfe0a4b34c3075d09e879cc98724 (diff)
downloadguix-706f25f24dab13dff69e7977b5d84269c1dfa293.tar.gz
services: ganeti: OS variants can be a directory.
* gnu/services/ganeti.scm (<ganeti-os>)[extension]: Default to #f.
(ganeti-os->directory): Only add extension if set.  Support a file-like object
for VARIANTS.
* doc/guix.texi (Virtualization Services): Document this change and add
example.  Update Ganeti URLs while at it.
Diffstat (limited to 'doc/guix.texi')
-rw-r--r--doc/guix.texi30
1 files changed, 24 insertions, 6 deletions
diff --git a/doc/guix.texi b/doc/guix.texi
index 449049fcc8..7806b21a0f 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -33941,7 +33941,7 @@ cluster node that supports multiple storage backends, and installs the
 @end lisp
 
 Users are advised to read the
-@url{http://docs.ganeti.org/ganeti/master/html/admin.html,Ganeti
+@url{https://docs.ganeti.org/docs/ganeti/3.0/html/admin.html,Ganeti
 administrators guide} to learn about the various cluster options and
 day-to-day operations.  There is also a
 @url{https://guix.gnu.org/blog/2020/running-a-ganeti-cluster-on-guix/,blog post}
@@ -34030,12 +34030,30 @@ The name for this OS provider.  It is only used to specify where the
 configuration ends up.  Setting it to ``debootstrap'' will create
 @file{/etc/ganeti/instance-debootstrap}.
 
-@item @code{extension}
-The file extension for variants of this OS type.  For example
-@file{.conf} or @file{.scm}.
+@item @code{extension} (default: @code{#f})
+The file extension for variants of this OS type.  For example @file{.conf}
+or @file{.scm}.  It will be appended to the variant file name if set.
 
 @item @code{variants} (default: @code{'()})
-List of @code{ganeti-os-variant} objects for this OS.
+This must be either a list of @code{ganeti-os-variant} objects for this OS,
+or a ``file-like'' object (@pxref{G-Expressions, file-like objects})
+representing the variants directory.
+
+To use the Guix OS provider with variant definitions residing in a local
+directory instead of declaring individual variants (see @var{guix-variants}
+below), you can do:
+
+@lisp
+(ganeti-os
+ (name "guix")
+ (variants (local-file "ganeti-guix-variants"
+                       #:recursive? #true)))
+@end lisp
+
+Note that you will need to maintain the @file{variants.list} file
+(see @code{@url{https://docs.ganeti.org/docs/ganeti/3.0/man/ganeti-os-interface.html,
+ganeti-os-interface(7)}})
+manually in this case.
 
 @end table
 @end deftp
@@ -34318,7 +34336,7 @@ via a JSON-based RPC protocol.
 Most query operations are allowed without authentication (unless
 @var{require-authentication?} is set), whereas write operations require
 explicit authorization via the @file{/var/lib/ganeti/rapi/users} file.  See
-the @url{http://docs.ganeti.org/ganeti/master/html/rapi.html, Ganeti Remote
+the @url{https://docs.ganeti.org/docs/ganeti/3.0/html/rapi.html, Ganeti Remote
 API documentation} for more information.
 
 The value of this service must be a @code{ganeti-rapi-configuration} object.