Switch to title-based wiki-links (#91)
## Summary - Remove aliases from all zk cards to prevent them from capturing wiki-links - Convert all wiki-links from `[[filename|Title]]` to `[[Title]]` format - Replace `doc-filenames` task with `doc-titles` for duplicate title detection - Update pre-commit hook to use `doc-titles` Wiki-links now resolve to reference docs by their frontmatter title, which is more readable and maintainable than filename-based links. ## Deployment and Testing - [x] Pre-commit hooks pass (including new `doc-titles` check) - [x] Manually verified zk cards have aliases removed - [ ] Deploy docs v1.0.7 and verify wiki-links resolve correctly - [ ] Test links to reference docs (e.g., [[Grafana Alloy]], [[ArgoCD]]) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Reviewed-on: https://forge.ops.eblu.me/eblume/blumeops/pulls/91
This commit is contained in:
parent
6162179ac9
commit
01adc4cf0f
56 changed files with 501 additions and 431 deletions
|
|
@ -23,5 +23,5 @@ Managed via `Brewfile` and `mise.toml` in the blumeops repo.
|
|||
|
||||
## Related
|
||||
|
||||
- [[indri|Indri]] - Server accessed from gilbert
|
||||
- [[cluster|Cluster]] - Remote k8s access
|
||||
- [[Indri]] - Server accessed from gilbert
|
||||
- [[Kubernetes Cluster|Cluster]] - Remote k8s access
|
||||
|
|
|
|||
|
|
@ -12,14 +12,14 @@ All devices connected via [Tailscale](https://login.tailscale.com/) tailnet `tai
|
|||
|
||||
| Host | Description | Card |
|
||||
|------|-------------|------|
|
||||
| **Indri** | Mac Mini M1, 2020 - Primary server | [[indri|Details]] |
|
||||
| **Gilbert** | MacBook Air M4, 2025 - Workstation | [[gilbert|Details]] |
|
||||
| **[[sifaka|Sifaka]]** | Synology NAS - Storage & backups | [[sifaka|Details]] |
|
||||
| **Indri** | Mac Mini M1, 2020 - Primary server | [[Indri|Details]] |
|
||||
| **Gilbert** | MacBook Air M4, 2025 - Workstation | [[Gilbert|Details]] |
|
||||
| **[[Sifaka NAS|Sifaka]]** | Synology NAS - Storage & backups | [[Sifaka NAS|Details]] |
|
||||
| **Mouse** | MacBook Air M2 - Allison's laptop | - |
|
||||
| **UniFi** | UniFi Express 7 - Home WiFi | - |
|
||||
| **Dwarf** | iPad Air - Employer-provided, off tailnet | - |
|
||||
|
||||
## Related
|
||||
|
||||
- [[tailscale|Tailscale]] - Network configuration
|
||||
- [[routing|Routing]] - Service URLs
|
||||
- [[Tailscale]] - Network configuration
|
||||
- [[Service Routing|Routing]] - Service URLs
|
||||
|
|
|
|||
|
|
@ -22,17 +22,17 @@ Primary BlumeOps server. Mac Mini M1 (2020).
|
|||
## Services Hosted
|
||||
|
||||
**Native (via Ansible):**
|
||||
- [[forgejo|Forgejo]] - Git forge
|
||||
- [[zot|Zot]] - Container registry
|
||||
- [[jellyfin|Jellyfin]] - Media server
|
||||
- [[borgmatic|Borgmatic]] - Backup system
|
||||
- [[alloy|Alloy]] - Metrics/logs collector
|
||||
- [[Forgejo]] - Git forge
|
||||
- [[Zot]] - Container registry
|
||||
- [[Jellyfin]] - Media server
|
||||
- [[Borgmatic]] - Backup system
|
||||
- [[Grafana Alloy|Alloy]] - Metrics/logs collector
|
||||
- Caddy - Reverse proxy for `*.ops.eblu.me`
|
||||
|
||||
**Kubernetes (via minikube):**
|
||||
- [[apps|All k8s applications]]
|
||||
- [[ArgoCD Applications|All k8s applications]]
|
||||
|
||||
## Related
|
||||
|
||||
- [[routing|Routing]] - Port mappings
|
||||
- [[cluster|Cluster]] - Minikube details
|
||||
- [[Service Routing|Routing]] - Port mappings
|
||||
- [[Kubernetes Cluster|Cluster]] - Minikube details
|
||||
|
|
|
|||
|
|
@ -25,20 +25,20 @@ DNS points to indri's Tailscale IP (100.98.163.89). TLS via Let's Encrypt (ACME
|
|||
| Service | URL | Description |
|
||||
|---------|-----|-------------|
|
||||
| Homepage | https://go.ops.eblu.me | Service dashboard |
|
||||
| [[forgejo|Forgejo]] | https://forge.ops.eblu.me | Git hosting (SSH: 2222) |
|
||||
| [[zot|Zot]] | https://registry.ops.eblu.me | Container registry |
|
||||
| [[grafana|Grafana]] | https://grafana.ops.eblu.me | Dashboards |
|
||||
| [[argocd|ArgoCD]] | https://argocd.ops.eblu.me | GitOps CD |
|
||||
| [[prometheus|Prometheus]] | https://prometheus.ops.eblu.me | Metrics |
|
||||
| [[loki|Loki]] | https://loki.ops.eblu.me | Logs |
|
||||
| [[miniflux|Miniflux]] | https://feed.ops.eblu.me | RSS reader |
|
||||
| [[kiwix|Kiwix]] | https://kiwix.ops.eblu.me | Offline Wikipedia |
|
||||
| [[transmission|Transmission]] | https://torrent.ops.eblu.me | BitTorrent |
|
||||
| [[teslamate|TeslaMate]] | https://tesla.ops.eblu.me | Tesla logger |
|
||||
| [[navidrome|Navidrome]] | https://dj.ops.eblu.me | Music streaming |
|
||||
| [[jellyfin|Jellyfin]] | https://jellyfin.ops.eblu.me | Media server |
|
||||
| [[postgresql|PostgreSQL]] | pg.ops.eblu.me:5432 | Database |
|
||||
| [[sifaka|Sifaka]] | https://nas.ops.eblu.me | NAS dashboard |
|
||||
| [[Forgejo]] | https://forge.ops.eblu.me | Git hosting (SSH: 2222) |
|
||||
| [[Zot]] | https://registry.ops.eblu.me | Container registry |
|
||||
| [[Grafana]] | https://grafana.ops.eblu.me | Dashboards |
|
||||
| [[ArgoCD]] | https://argocd.ops.eblu.me | GitOps CD |
|
||||
| [[Prometheus]] | https://prometheus.ops.eblu.me | Metrics |
|
||||
| [[Loki]] | https://loki.ops.eblu.me | Logs |
|
||||
| [[Miniflux]] | https://feed.ops.eblu.me | RSS reader |
|
||||
| [[Kiwix]] | https://kiwix.ops.eblu.me | Offline Wikipedia |
|
||||
| [[Transmission]] | https://torrent.ops.eblu.me | BitTorrent |
|
||||
| [[TeslaMate]] | https://tesla.ops.eblu.me | Tesla logger |
|
||||
| [[Navidrome]] | https://dj.ops.eblu.me | Music streaming |
|
||||
| [[Jellyfin]] | https://jellyfin.ops.eblu.me | Media server |
|
||||
| [[PostgreSQL]] | pg.ops.eblu.me:5432 | Database |
|
||||
| [[Sifaka NAS|Sifaka]] | https://nas.ops.eblu.me | NAS dashboard |
|
||||
|
||||
## Tailscale-Only Services
|
||||
|
||||
|
|
@ -61,5 +61,5 @@ DNS points to indri's Tailscale IP (100.98.163.89). TLS via Let's Encrypt (ACME
|
|||
|
||||
## Related
|
||||
|
||||
- [[tailscale|Tailscale]] - ACL configuration
|
||||
- [[indri|Indri]] - Where services run
|
||||
- [[Tailscale]] - ACL configuration
|
||||
- [[Indri]] - Where services run
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ ACLs managed via Pulumi in `pulumi/policy.hujson`.
|
|||
|
||||
| Group | Members | Purpose |
|
||||
|-------|---------|---------|
|
||||
| `group:allisonflix` | admin, member | [[jellyfin|Jellyfin]] media access |
|
||||
| `group:allisonflix` | admin, member | [[Jellyfin]] media access |
|
||||
|
||||
## Device Tags
|
||||
|
||||
|
|
@ -58,5 +58,5 @@ Pulumi uses OAuth client from 1Password (blumeops vault):
|
|||
|
||||
## Related
|
||||
|
||||
- [[routing|Routing]] - Service URLs
|
||||
- [[hosts|Hosts]] - Device inventory
|
||||
- [[Service Routing|Routing]] - Service URLs
|
||||
- [[Host Inventory|Hosts]] - Device inventory
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue