site generator: commands/*.md with front matter -> k8s/site/
site / generated-is-current (push) Failing after 36s

- build/build.mjs: one-file-per-command content (filename = command,
  underscores = spaces; help/suggestion/params/prefix/text/hidden in
  front matter; ${args} ${date} ${time} ${ls} ${help} resolved at runtime)
- generates index.html (banner + chips), commands.json (the single data
  source), hello.txt for curl, style.css via tailwind v4
- src/site.js is now dispatch-only over commands.json; typewriter kept
- src/telnet.py: stdlib telnet shell sharing commands.json
- k8s: python telnet sidecar in the pod + LoadBalancer service 23->2323
- .gitea/workflows/site.yml fails CI when k8s/site/ is not the built output
This commit is contained in:
momme
2026-10-14 01:14:28 +02:00
parent 5852efafd7
commit 8d33460580
47 changed files with 2773 additions and 424 deletions
+265
View File
@@ -0,0 +1,265 @@
{
"banner": " _ _ \n | | | |\n _ __ ___ ___ _ __ ___ _ __ ___ ___ __ _____ _ __| | __| |\n | '_ ` _ \\ / _ \\| '_ ` _ \\| '_ ` _ \\ / _ \\ \\ \\ /\\ / / _ \\| '__| |/ _` |\n | | | | | | (_) | | | | | | | | | | | __/ _ \\ V V / (_) | | | | (_| |\n |_| |_| |_|\\___/|_| |_| |_|_| |_| |_|\\___| (_) \\_/\\_/ \\___/|_| |_|\\__,_|\n\n0110110101101111011011010110110101100101001011100111011101101111011100100110110001100100",
"commands": [
{
"name": "cat",
"help": "cat README.md",
"params": "",
"prefix": true,
"suggestion": false,
"hidden": false,
"text": false,
"body": "cat README.md the welcome message, piped\n.ssh/id_rsa nice try."
},
{
"name": "clear",
"help": "wipe the screen",
"params": "",
"prefix": false,
"suggestion": false,
"hidden": false,
"text": false,
"body": ""
},
{
"name": "coffee",
"help": "brew coffee",
"params": "",
"prefix": false,
"suggestion": false,
"hidden": false,
"text": false,
"body": "() ~ I'm out of coffee."
},
{
"name": "contact",
"help": "reach me directly",
"params": "",
"prefix": false,
"suggestion": true,
"hidden": false,
"text": true,
"body": "mail -> mailto:momme@juergensen.me\nmatrix -> https://matrix.to/#/@momme:chaos.jetzt"
},
{
"name": "curl",
"help": "curl momme.world — you already did that",
"params": "",
"prefix": true,
"suggestion": false,
"hidden": false,
"text": false,
"body": "you are already reading the output :)"
},
{
"name": "date",
"help": "today's date",
"params": "",
"prefix": false,
"suggestion": false,
"hidden": false,
"text": false,
"body": "${date}"
},
{
"name": "echo",
"help": "echo <text> — repeat yourself",
"params": "<text>",
"prefix": true,
"suggestion": false,
"hidden": false,
"text": false,
"body": "${args}"
},
{
"name": "emacs",
"help": "an OS with good editing",
"params": "",
"prefix": true,
"suggestion": false,
"hidden": false,
"text": false,
"body": "a great OS, shame about the editor."
},
{
"name": "exit",
"help": "close the session",
"params": "",
"prefix": false,
"suggestion": false,
"hidden": false,
"text": false,
"body": "close the tab, or just stop reading :)"
},
{
"name": "hello",
"help": "the welcome message",
"params": "",
"prefix": false,
"suggestion": true,
"hidden": false,
"text": true,
"body": "Hey :)\nI'm Momme. I build and break infrastructure, and I keep the pieces in\nKubernetes so they can be put back together again.\nType help to see what this box knows."
},
{
"name": "help",
"help": "this list",
"params": "<command>",
"prefix": false,
"suggestion": false,
"hidden": false,
"text": false,
"body": "${help}"
},
{
"name": "ls",
"help": "what's in here",
"params": "",
"prefix": false,
"suggestion": false,
"hidden": false,
"text": false,
"body": "${ls}"
},
{
"name": "project",
"help": "project <name> — what I'm building",
"params": "",
"prefix": false,
"suggestion": true,
"hidden": false,
"text": true,
"body": "nix-ha-kubernetes-cluster high-availability Kubernetes on NixOS, built to learn on\nbrahmsee.digital event management platform for DLRG Schleswig-Holstein\nsilvatica-web website of the Silvatica festival, Schwäbisch Hall\nmomme.world this site — no build step, GitOps all the way down\n more of them at: https://github.com/supermomme"
},
{
"name": "project brahmsee.digital",
"help": "",
"params": "",
"prefix": false,
"suggestion": false,
"hidden": false,
"text": false,
"body": "Event management platform for DLRG Schleswig-Holstein.\nRegistrations and scheduling for a state water-rescue organisation, where the\ntraffic arrives in waves of a few hundred people at once. -> https://brahmsee.digital"
},
{
"name": "project fpv",
"help": "the flying camera budget",
"params": "",
"prefix": false,
"suggestion": false,
"hidden": false,
"text": false,
"body": "FPV drones — built, flown, crashed, rebuilt.\nThe honest way to learn soldering, PID tuning and how fast a frame becomes parts."
},
{
"name": "project momme.world",
"help": "",
"params": "",
"prefix": false,
"suggestion": false,
"hidden": false,
"text": false,
"body": "This site. Markdown in, website out: build/build.mjs generates the commands,\nthe tailnet shell and this page. One nginx pod, GitOps all the way down.\n-> https://git.momme.cloud/momme/momme-world"
},
{
"name": "project nix-ha-kubernetes-cluster",
"help": "",
"params": "",
"prefix": false,
"suggestion": false,
"hidden": false,
"text": false,
"body": "An HA Kubernetes cluster on NixOS, built to learn rather than to impress.\nControl plane in HA, Ceph for storage, GitOps for everything above it.\nThis site runs on it. -> https://github.com/supermomme/nix-ha-kubernetes-cluster"
},
{
"name": "project silvatica-web",
"help": "",
"params": "",
"prefix": false,
"suggestion": false,
"hidden": false,
"text": false,
"body": "Website of the Silvatica festival in Schwäbisch Hall.\n-> https://github.com/supermomme/silvatica-web"
},
{
"name": "pwd",
"help": "working directory",
"params": "",
"prefix": false,
"suggestion": false,
"hidden": false,
"text": false,
"body": "/world"
},
{
"name": "social",
"help": "where I hang out online",
"params": "",
"prefix": false,
"suggestion": true,
"hidden": false,
"text": true,
"body": "github -> https://github.com/supermomme\nmastodon -> https://cybre.town/@momme\ninstagram -> https://instagram.com/supermommej"
},
{
"name": "stack",
"help": "the tools I reach for",
"params": "",
"prefix": false,
"suggestion": true,
"hidden": false,
"text": true,
"body": "kubernetes self-hosted cluster, GitOps with ArgoCD, Terraform for the rest\nnix reproducible configs for servers and laptops\nobservability Prometheus, Loki, Grafana — dashboards I actually read\nfpv drones built, flown, crashed, rebuilt"
},
{
"name": "sudo",
"help": "elevate",
"params": "",
"prefix": true,
"suggestion": false,
"hidden": false,
"text": false,
"body": "momme is not in the sudoers file. This incident has been reported."
},
{
"name": "time",
"help": "current time",
"params": "",
"prefix": false,
"suggestion": false,
"hidden": false,
"text": false,
"body": "${time}"
},
{
"name": "uname",
"help": "system information",
"params": "",
"prefix": true,
"suggestion": false,
"hidden": false,
"text": false,
"body": "momme.world 1.0.0 static x86_64 GNU/freedom"
},
{
"name": "vim",
"help": "an editor",
"params": "",
"prefix": true,
"suggestion": false,
"hidden": false,
"text": false,
"body": "emacs, obviously."
},
{
"name": "whoami",
"help": "who is typing",
"params": "",
"prefix": false,
"suggestion": true,
"hidden": false,
"text": true,
"body": "Momme Jürgensen — infrastructure and developer platforms.\nI like work that ends up as a short command instead of a long document.\nCurrently at codeanker."
}
]
}