1{
2 pkgs,
3 ...
4}:
5{
6 name = "go-neb";
7 meta = with pkgs.lib.maintainers; {
8 maintainers = [
9 hexa
10 maralorn
11 ];
12 };
13
14 nodes = {
15 server = {
16 services.go-neb = {
17 enable = true;
18 baseUrl = "http://localhost";
19 secretFile = pkgs.writeText "secrets" "ACCESS_TOKEN=changeme";
20 config = {
21 clients = [
22 {
23 UserId = "@test:localhost";
24 AccessToken = "$ACCESS_TOKEN";
25 HomeServerUrl = "http://localhost";
26 Sync = false;
27 AutoJoinRooms = false;
28 DisplayName = "neverbeseen";
29 }
30 ];
31 services = [
32 {
33 ID = "wikipedia_service";
34 Type = "wikipedia";
35 UserID = "@test:localhost";
36 Config = { };
37 }
38 ];
39 };
40 };
41 };
42 };
43
44 testScript = ''
45 start_all()
46 server.wait_for_unit("go-neb.service")
47 server.wait_until_succeeds("curl -fL http://localhost:4050/services/hooks/d2lraXBlZGlhX3NlcnZpY2U")
48 server.succeed(
49 "journalctl -eu go-neb -o cat | grep -q service_id=wikipedia_service",
50 "grep -q changeme /var/run/go-neb/config.yaml",
51 )
52 '';
53
54}