1{ lib, ... }:
2
3{
4 name = "pretalx";
5 meta.maintainers = lib.teams.c3d2.members;
6
7 nodes = {
8 pretalx = { config, ... }: {
9 networking.extraHosts = ''
10 127.0.0.1 talks.local
11 '';
12
13 services.pretalx = {
14 enable = true;
15 plugins = with config.services.pretalx.package.plugins; [
16 pages
17 ];
18 nginx.domain = "talks.local";
19 settings = {
20 site.url = "http://talks.local";
21 };
22 };
23 };
24 };
25
26 testScript = ''
27 start_all()
28
29 pretalx.wait_for_unit("pretalx-web.service")
30 pretalx.wait_for_unit("pretalx-worker.service")
31
32 pretalx.wait_until_succeeds("curl -q --fail http://talks.local/orga/")
33
34 pretalx.succeed("pretalx-manage --help")
35
36 pretalx.log(pretalx.succeed("systemd-analyze security pretalx-web.service"))
37 '';
38}