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