Next: Servicios de gestión de energía, Previous: Samba Services, Up: Servicios [Contents][Index]
Cuirass is a continuous integration tool for Guix. It can be used both for development and for providing substitutes to others (see Sustituciones).
El módulo (gnu services cuirass)
proporciona el siguiente servicio.
El tipo del servicio Cuirass. Su valor debe ser un objeto
cuirass-configuration
, como se describe a continuación.
To add build jobs, you have to set the specifications
field of the
configuration. For instance, the following example will build all the
packages provided by the my-channel
channel.
(define %cuirass-specs #~(list (specification (name "my-channel") (build '(channels my-channel)) (channels (cons (channel (name 'my-channel) (url "https://my-channel.git")) %default-channels))))) (service cuirass-service-type (cuirass-configuration (specifications %especificacion-de-cuirass)))
To build the linux-libre
package defined by the default Guix channel,
one can use the following configuration.
(define %cuirass-specs #~(list (specification (name "my-linux") (build '(packages "linux-libre"))))) (service cuirass-service-type (cuirass-configuration (specifications %especificacion-de-cuirass)))
The other configuration possibilities, as well as the specification record itself are described in the Cuirass manual (see Specifications in Cuirass).
Mientras que la información de los trabajos de construcción se encuentra
directamente en las especificaciones, la configuración global del proceso
cuirass
está accesible en otros campos de
cuirass-configuration
.
Tipo de datos que representa la configuración de Cuirass.
cuirass
(predeterminado: cuirass
)El paquete Cuirass usado.
log-file
(predeterminado: "/var/log/cuirass.log"
)Localización del archivo de registro.
web-log-file
(predeterminado: "/var/log/cuirass-web.log"
)Localización del archivo de registro usado por la interfaz web.
cache-directory
(predeterminado: "/var/cache/cuirass"
)Localización de la caché del repositorio.
user
(predeterminado: "cuirass"
)Propietaria del proceso cuirass
.
group
(predeterminado: "cuirass"
)Grupo propietario del proceso cuirass
.
interval
(predeterminado: 60
)Número de segundos entre las consulta de repositorios seguida de los trabajos de Cuirass.
parameters
(default: #f
)Read parameters from the given parameters file. The supported parameters are described here (see Parameters in Cuirass).
remote-server
(default: #f
)A cuirass-remote-server-configuration
record to use the build remote
mechanism or #f
to use the default build mechanism.
database
(default: "dbname=cuirass host=/var/run/postgresql"
)Use database as the database containing the jobs and the past build
results. Since Cuirass uses PostgreSQL as a database engine, database
must be a string such as "dbname=cuirass host=localhost"
.
port
(predeterminado: 8081
)Número de puerto usado por el servidor HTTP.
host
(predeterminado: "localhost"
)Escucha en la interfaz de red de la dirección host. El comportamiento predeterminado es aceptar conexiones desde la red local.
specifications
(predeterminada: #~'()
)A gexp (see Expresiones-G) that evaluates to a list of specifications records. The specification record is described in the Cuirass manual (see Specifications in Cuirass).
use-substitutes?
(predeterminado: #f
)Permite el uso de sustituciones para evitar la construcción desde las fuentes de todas las dependencias de un trabajo.
one-shot?
(predeterminado: #f
)Evalúa las especificaciones y construye las derivaciones solo una vez.
fallback?
(predeterminado: #f
)Cuando la sustitución de un binario preconstruido falle, se intentará la construcción local de los paquetes.
extra-options
(predeterminadas: '()
)Opciones adicionales proporcionadas a los procesos de Cuirass.
Cuirass supports two mechanisms to build derivations.
To enable this build mode a cuirass-remote-server-configuration
record must be passed as remote-server
argument of the
cuirass-configuration
record. The
cuirass-remote-server-configuration
record is described below.
This build mode scales way better than the default build mode. This is the build mode that is used on the GNU Guix build farm at https://ci.guix.gnu.org. It should be preferred when using Cuirass to build large amount of packages.
Data type representing the configuration of the Cuirass remote-server.
backend-port
(default: 5555
)The TCP port for communicating with remote-worker
processes using
ZMQ. It defaults to 5555
.
log-port
(default: 5556
)The TCP port of the log server. It defaults to 5556
.
publish-port
(default: 5557
)The TCP port of the publish server. It defaults to 5557
.
log-file
(default: "/var/log/cuirass-remote-server.log"
)Localización del archivo de registro.
cache
(default: "/var/cache/cuirass/remote"
)Use cache directory to cache build log files.
trigger-url
(default: #f
)Once a substitute is successfully fetched, trigger substitute baking at trigger-url.
publish?
(predeterminado: #t
)If set to false, do not start a publish server and ignore the
publish-port
argument. This can be useful if there is already a
standalone publish server standing next to the remote server.
public-key
private-key
Usa los archivos específicos como el par de claves pública y privada usadas para firmar los elementos del almacén publicados.
At least one remote worker must also be started on any machine of the local network to actually perform the builds and report their status.
Data type representing the configuration of the Cuirass remote-worker.
cuirass
(predeterminado: cuirass
)El paquete Cuirass usado.
workers
(default: 1
)Start workers parallel workers.
server
(predeterminada: #f
)Do not use Avahi discovery and connect to the given server
IP address
instead.
systems
(default: (list (%current-system))
)Only request builds for the given systems.
log-file
(default: "/var/log/cuirass-remote-worker.log"
)Localización del archivo de registro.
publish-port
(default: 5558
)The TCP port of the publish server. It defaults to 5558
.
substitute-urls
(predeterminado: %default-substitute-urls
)La lista de URLs donde se buscarán sustituciones por defecto.
public-key
private-key
Usa los archivos específicos como el par de claves pública y privada usadas para firmar los elementos del almacén publicados.
Laminar is a lightweight and modular Continuous Integration service. It doesn’t have a configuration web UI instead uses version-controllable configuration files and scripts.
Laminar encourages the use of existing tools such as bash and cron instead of reinventing them.
The type of the Laminar service. Its value must be a
laminar-configuration
object, as described below.
All configuration values have defaults, a minimal configuration to get Laminar running is shown below. By default, the web interface is available on port 8080.
Data type representing the configuration of Laminar.
laminar
(default: laminar
)The Laminar package to use.
home-directory
(default: "/var/lib/laminar"
)The directory for job configurations and run directories.
bind-http
(default: "*:8080"
)The interface/port or unix socket on which laminard should listen for incoming connections to the web frontend.
bind-rpc
(default: "unix-abstract:laminar"
)The interface/port or unix socket on which laminard should listen for incoming commands such as build triggers.
title
(default: "Laminar"
)The page title to show in the web frontend.
keep-rundirs
(default: 0
)Set to an integer defining how many rundirs to keep per job. The lowest-numbered ones will be deleted. The default is 0, meaning all run dirs will be immediately deleted.
archive-url
(default: #f
)The web frontend served by laminard will use this URL to form links to artefacts archived jobs.
base-url
(default: #f
)Base URL to use for links to laminar itself.
Next: Servicios de gestión de energía, Previous: Samba Services, Up: Servicios [Contents][Index]