mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-07-19 08:31:01 +03:00
52 lines
1.4 KiB
Nix
52 lines
1.4 KiB
Nix
import ./make-test-python.nix (
|
|
{ lib, pkgs, ... }:
|
|
{
|
|
name = "szurubooru";
|
|
meta.maintainers = with lib.maintainers; [ ratcornu ];
|
|
|
|
nodes.machine =
|
|
let
|
|
dbpass = "changeme";
|
|
in
|
|
|
|
{ config, ... }:
|
|
{
|
|
services.postgresql = {
|
|
enable = true;
|
|
initialScript = pkgs.writeText "init.sql" ''
|
|
CREATE USER ${config.services.szurubooru.database.user} WITH PASSWORD '${dbpass}';
|
|
CREATE DATABASE ${config.services.szurubooru.database.name} WITH OWNER ${config.services.szurubooru.database.user};
|
|
'';
|
|
};
|
|
|
|
services.szurubooru = {
|
|
enable = true;
|
|
|
|
dataDir = "/var/lib/szurubooru";
|
|
|
|
server = {
|
|
port = 6666;
|
|
settings = {
|
|
domain = "http://127.0.0.1";
|
|
secretFile = pkgs.writeText "secret" "secret";
|
|
debug = 1;
|
|
};
|
|
};
|
|
|
|
database = {
|
|
host = "localhost";
|
|
port = 5432;
|
|
name = "szurubooru";
|
|
user = "szurubooru";
|
|
passwordFile = pkgs.writeText "pass" "${dbpass}";
|
|
};
|
|
};
|
|
};
|
|
|
|
testScript = ''
|
|
machine.wait_for_unit("szurubooru.service")
|
|
machine.wait_for_open_port(6666)
|
|
machine.succeed('curl -H "Content-Type: application/json" -H "Accept: application/json" --fail http://127.0.0.1:6666/info')
|
|
'';
|
|
}
|
|
)
|