build a hugo docs page from the readme files

This commit is contained in:
goeranh 2026-03-13 18:06:20 +01:00
parent bfe941217d
commit d106386cc0
No known key found for this signature in database
5 changed files with 229 additions and 3 deletions

View file

@ -41,8 +41,17 @@
# wenn instanzen in die flake migriert sind könnte man das autogenerierien
services =
let
# Documentation site from flake package
docsSite = self.packages.x86_64-linux.docs-site;
# jeder Block beschreibt eine Weiterleitung von port 80 und 443 für einen fqdn
forwards = {
docs = {
dest = "127.0.0.1";
domain = "docs.adm.htw.stura-dresden.de";
httpPort = 8080;
httpsPort = 8443;
};
plone = {
dest = "141.56.51.3";
domain = "stura.htw-dresden.de";
@ -206,6 +215,44 @@
}
];
};
# Nginx to serve the documentation site
nginx = {
enable = true;
virtualHosts."docs.adm.htw.stura-dresden.de" = {
enableACME = true;
listen = [
{
addr = "127.0.0.1";
port = 8080;
}
];
locations."/" = {
root = docsSite;
tryFiles = "$uri $uri/ $uri.html =404";
};
};
# HTTPS version for internal serving
appendHttpConfig = ''
server {
listen 127.0.0.1:8443 ssl http2;
server_name docs.adm.htw.stura-dresden.de;
ssl_certificate ${config.security.acme.certs."docs.adm.htw.stura-dresden.de".directory}/cert.pem;
ssl_certificate_key ${
config.security.acme.certs."docs.adm.htw.stura-dresden.de".directory
}/key.pem;
location / {
root ${docsSite};
try_files $uri $uri/ $uri.html =404;
}
}
'';
};
# ACME certificate for docs site
haproxy = {
enable = true;
config = ''
@ -242,7 +289,8 @@
# hier wird eine regel pro domain aus der forwarder liste generiert
${lib.foldlAttrs (
prev: name: value:
prev + ''
prev
+ ''
acl is_${name} hdr(host) -i ${value.domain}
''
) "" forwards}