Age | Commit message (Collapse) | Author |
|
* guix/forge/forge.scm (<forge-project>)[parallel-ci-job-runs]: New
field.
* guix/forge/forge.scm (forge-ci-jobs): Add project context to CI
jobs.
(forge-ci-job-contexts): New function.
(forge-ci-jobs-and-groups): Rename to
forge-ci-jobs+contexts+groups. Also return <forge-laminar-context>
objects.
(forge-service-type): Call forge-ci-jobs+contexts+groups instead of
forge-ci-jobs-and-groups.
* doc/forge.skb (Reference)[<forge-project>]{parallel-ci-job-runs}:
Document it.
|
|
* guix/forge/laminar.scm (<forge-laminar-job>)[contexts]: New field.
* guix/forge/laminar.scm (laminar-jobs): Create job configuration file
specifying contexts.
* doc/forge.skb (Reference)[<forge-laminar-job>]{contexts}: Document
it.
|
|
* guix/forge/laminar.scm: Export forge-laminar-configuration-groups.
|
|
* guix/forge/laminar.scm (<forge-laminar-configuration>)[contexts]:
New field.
* guix/forge/laminar.scm (<forge-laminar-context>): New record type.
(laminar-contexts): New function.
(forge-laminar-activation): Configure contexts in configuration
directory.
(forge-laminar-service-type): Allow extension with contexts.
|
|
* guix/forge/laminar.scm (forge-laminar-activation): Use
switch-symlinks, instead of delete-file and symlink.
|
|
* guix/forge/laminar.scm (forge-laminar-activation): Remove unused
SRFI-26 import.
|
|
* guix/forge/laminar.scm (laminar-groups, laminar-jobs): New
functions.
(forge-laminar-activation): Use laminar-groups and laminar-jobs.
|
|
* guix/forge/gunicorn.scm (<gunicorn-app>)[timeout]: New field.
* guix/forge/gunicorn.scm (gunicorn-shepherd-services): Pass --timeout
parameter.
* doc/forge.skb (Reference)[Specialized application deployment
services]{gunicorn service}<gunicorn-app>: Document timeout field.
|
|
Provisioning the 'gunicorn symbol is problematic when there are
multiple gunicorn apps running.
* guix/forge/gunicorn.scm (gunicorn-shepherd-services): Provision
app-specific symbol.
|
|
* guix/forge/gunicorn.scm: Import python instead of python-minimal.
(gunicorn-shepherd-services): Use python, not python-minimal, to
construct app profile.
|
|
* guix/forge/fcgiwrap.scm: Import (forge environment).
(fcgiwrap-shepherd-services): Use <environment-variable> record.
* doc/forge.skb (Services)[Specialized application deployment
services]{fcgiwrap service}: Document it.
* guix/forge/cgit.scm: Import (forge environment).
(cgit-fcgiwrap-instance): Use <environment-variable> record.
|
|
* guix/forge/gunicorn.scm: Import (forge environment).
(gunicorn-shepherd-services): Use <environment-variable> record.
* doc/forge.skb (Services)[Specialized application deployment
services]{gunicorn service}: Document it.
* guix/forge/klaus.scm: Import (forge environment).
(klaus-gunicorn-app): Use <environment-variable> record.
|
|
* guix/forge/environment.scm: New file.
* doc/forge.skb (Reference)[<environment-variable>]: Document it.
|
|
* guix/forge/klaus.scm (klaus-gunicorn-app): Make klaus package a
configurable keyword argument.
|
|
* guix/forge/forge.scm (<variable-specification>): New type.
(guix-channel-job-gexp): Accept #:variables argument specifying
what to build.
|
|
* guix/forge/tissue.scm (tissue-activation): Explains permissions set
on the tissue state directory.
|
|
* guix/forge/acme.scm (acme-service-type): Combine deploy hooks into a
file-like object, not a raw G-expression.
|
|
* guix/forge/forge.scm (forge-activation): Set repository ownership
only when user field is set.
|
|
* guix/forge/acme.scm (acme-renew): Import (ice-9 match) in
G-expression.
|
|
* guix/forge/cgit.scm: Import emacs-minimal from (gnu packages emacs).
(%cgit-readme): Add README.org.
(about-filter-gexp): Render org mode README files.
* guix/forge/org2html.el: New file.
* doc/forge.skb (Services)[Git web viewers]{cgit service}: Document
support for org mode README files.
|
|
* guix/forge/forge.scm: Import (gnu services) and (guix gexp) instead
of (gnu).
|
|
* guix/forge/gunicorn.scm (socket->gunicorn-bind): Support
<forge-host-socket> sockets.
* doc/forge.skb (Reference): Document it.
|
|
* guix/forge/cgit.scm: New file.
* doc/forge.skb (Services)[Git web viewers]: New section.
|
|
* guix/forge/fcgiwrap.scm: New file.
* doc/forge.skb (Services)[Specialized application deployment
services]: New section.
|
|
* guix/forge/nginx.scm, doc/snippets/acme-restart-nginx-sudoers.scm:
New files.
* doc/forge.skb (Services)[forge nginx service]: Document the
forge-nginx service.
|
|
* guix/forge/acme.scm: Import shadow from (gnu packages admin),
nss-certs from (gnu packages certs), (gnu services), (gnu services
mcron), (gnu system shadow), (guix diagnostics), (guix i18n), (guix
profiles), (guix records), (srfi srfi-1) and (ice-9 match).
(%letsencrypt-production-url, %letsencrypt-staging-url): New
variables.
(<acme-configuration>, <acme-rsa-key>, <acme-ecdsa-key>,
<acme-certificate>): New record types.
(acme-http-01-webroot-authorization-hook,
acme-http-01-webroot-cleanup-hook): New public functions.
(acme-key-length, uacme-hook, acme-activation, acme-renew,
acme-helper, acme-helper-sudo-wrapper, acme-special-files,
acme-cron-job, raise-to-top): New functions.
(%acme-accounts, acme-service-type): New variables.
* doc/forge.skb (Services)[ACME service]: New section.
|
|
* guix/forge/acme.scm: New file.
|
|
* guix/forge/socket.scm (<forge-host-socket>): New record type.
* doc/forge.skb (Reference): Document <forge-host-socket>.
|
|
* guix/forge/gunicorn.scm (socket->gunicorn-bind): Squeeze adjacent
strings "]" and ":" into one.
|
|
* guix/forge/gunicorn.scm (gunicorn-shepherd-services): Mention app
name in documentation field.
|
|
* guix/forge/klaus.scm (klaus-gunicorn-app): Change default socket to
/var/run/gunicorn/klaus/socket.
|
|
* guix/forge/gunicorn.scm (<gunicorn-app>): Add this-gunicorn-app
self-reference.
[sockets]: Make field thunked. Set default to Unix socket.
|
|
* guix/forge/klaus.scm: Import (forge socket).
(klaus-gunicorn-app): Make sockets a keyword argument with a singleton
list of Unix sockets as the default.
|
|
* guix/forge/klaus.scm: Import (forge gunicorn) and (gnu system
file-systems).
(klaus-gunicorn-app): New public function.
* doc/forge.skb (Introduction): Advertise klaus support.
(Reference): Document klaus-gunicorn-app.
|
|
* guix/forge/gunicorn.scm: New file.
* doc/forge.skb (Reference): Document <gunicorn-configuration> and
<gunicorn-app>.
|
|
* guix/forge/klaus.scm: Import python-pytest from (gnu packages
check); python-flask and python-werkzeug from (gnu packages
python-web); python-dulwich, python-humanize and python-pygments
from (gnu packages python-xyz).
(python-klaus): New variable.
|
|
* guix/forge/klaus.scm: Import git-minimal from (gnu packages
version-control), (guix gexp) and (guix utils).
(git-without-safe-directory-check): New variable.
|
|
* guix/forge/klaus.scm: New file.
|
|
* guix/forge/forge.scm (guix-channel-job-gexp): Add #:verbose?
argument.
|
|
* guix/forge/forge.scm: Import (guix profiles).
(guix-channel-job-gexp): Set TLS certificate paths.
|
|
This reference was accidentally committed in the previous commit.
* guix/forge/forge.scm: Do not import (forge web).
|
|
* guix/forge/forge.scm: Import guile-bytestructures from (gnu packages
guile), guix from (gnu packages package-management), (guix channels),
guile-git from (forge guile-git), (forge tissue) and (forge web).
(guix-channel-job-gexp): New public function.
|
|
* guix/forge/guile-git.scm: New file.
* guix/forge/tissue.scm: Import guile-git from (forge
guile-git), (guix git-download) and (guix packages). Import tissue
with a guix: prefix.
(tissue): New public variable.
|
|
* guix/forge/webhook.scm (webhook): Make public.
|
|
* guix/forge/tissue.scm: Do not import (gnu packages autotools), (gnu
packages compression), (gnu packages gettext), (gnu packages
guile), (gnu packages guile-xyz), (gnu packages skribilo), (guix
build-system gnu), (guix download), (guix git-download), (guix
licenses) and (guix packages).
(skribilo-latest, guile-xapian-latest, tissue): Delete variables.
|
|
Prior to this, when an IP socket was used, we would be running
forge-unix-socket-path on it and thus erroring out.
* guix/forge/tissue.scm (tissue-activation): Do not embed the socket
directory creation G-expression unless the socket is a Unix socket.
|
|
There is no string-contains? function. Ironically string-contains? is
indeed the better name since it is a predicate.
* guix/forge/socket.scm (ipv4-address?, ipv6-address?): Replace
string-contains? with string-contains.
|
|
* guix/forge/tissue.scm: Import lzip from (gnu packages
compression). Import (guix download).
(tissue): Update to 0.1.0.
[source]: Use url-fetch.
[native-inputs]: Add lzip.
|
|
* guix/forge/tissue.scm (guile-xapian-latest): New variable.
(tissue)[inputs]: Replace guile-xapian-latest with guile-xapian.
|
|
* guix/forge/forge.scm (forge-service-type): Refactor lambda functions
into ...
(forge-ci-jobs, forge-ci-job-groups, forge-ci-jobs-and-groups,
forge-cron-jobs, forge-webhooks): ... new functions.
|