about summary refs log tree commit diff
path: root/bundles/git/items.py
diff options
context:
space:
mode:
authorRobert Günzler <r@gnzler.io>2026-04-09 11:04:46 +0900
committerRobert Günzler <r@gnzler.io>2026-04-22 14:36:52 +0900
commitf87c066685098da9a67dd410104cbba8c5fdcdbd (patch)
tree5fe9d3c916931959d267123973e3123b1740a5e1 /bundles/git/items.py
parentaa913b59b3e5048fec396ee4b50288f740cdfccf (diff)
deploy cgit
Signed-off-by: Robert Günzler <r@gnzler.io>
Diffstat (limited to 'bundles/git/items.py')
-rw-r--r--bundles/git/items.py47
1 files changed, 47 insertions, 0 deletions
diff --git a/bundles/git/items.py b/bundles/git/items.py
new file mode 100644
index 0000000..22948ae
--- /dev/null
+++ b/bundles/git/items.py
@@ -0,0 +1,47 @@
+if node.os != "alpine":
+    raise BundleError(f"{node.name}: OS {node.os} is not supported.")
+
+svc_openrc = {
+    "fcgiwrap": {
+        "enabled": True,
+        "running": True,
+        "runlevel": "default",
+        "needs": [
+            "pkg_apk:fcgiwrap",
+        ],
+    },
+}
+
+directories = {
+    # this is where we store repos
+    "/var/lib/git": {
+        "mode": "0775",
+        "group": "wheel",
+        "owner": "robert",
+    },
+    # this is the webroot
+    "/var/www/cgit": {
+        "mode": "0775",
+        "group": "www-data",
+        "owner": "webdeploy",
+    },
+}
+
+files = {
+    "/var/www/cgit/Caddyfile": {},
+    "/var/www/cgit/custom.css": {},
+    "/etc/cgitrc": {},
+
+    "/etc/s6-rc/cgit.conf": {
+        "content_type": "mako",
+    },
+
+    # TODO: run behind go-away and expose?
+    "/etc/traefik/cgit.yaml": {
+        "content_type": "mako",
+        "source": "traefik.yaml",
+        "needs": {
+            "bundle:traefik",
+        },
+    },
+}