updated docs
Some checks failed
Test / tests (push) Failing after 2m27s
/ OpenTofu (push) Successful in 9s

This commit is contained in:
plasmagoat 2025-07-29 16:58:09 +02:00
parent ce8c543e84
commit 73d2f44d74
14 changed files with 940 additions and 913 deletions

View file

@ -2,8 +2,8 @@
> Auto-generated documentation for the homelab deployment
>
> Generated on: tir 29 jul 16:25:52 CEST 2025
> Source: /home/plasmagoat/homelab
> Generated on: $(date)
> Source: $(pwd)
## 📚 Documentation Files
@ -20,7 +20,7 @@ This documentation is automatically generated from your colmena flake configurat
## 🚀 Quick Actions
### View Current Status
```bash
\`\`\`bash
# Service status across fleet (if homelab CLI is available)
homelab services --global
@ -29,22 +29,22 @@ homelab backups --global
# Overall status
homelab status
```
\`\`\`
### Update Documentation
```bash
\`\`\`bash
# Regenerate all documentation
homelab-generate-docs ./docs
# Generate in different directory
homelab-generate-docs /path/to/output
```
\`\`\`
## 📋 Quick Stats
- **Total Nodes**: 2
- **Homelab-Enabled Nodes**: 2
- **Generated**: tir 29 jul 16:25:55 CEST 2025
- **Generated**: tir 29 jul 16:57:16 CEST 2025
## 🛠️ Management Tools
@ -60,6 +60,40 @@ homelab-generate-docs /path/to/output
- `colmena apply` - Deploy configuration changes
- `colmena build` - Build configurations without deploying
## 🎯 Integration with CI/CD
### GitHub Actions Example
```yaml
name: Generate Documentation
on:
push:
branches: [ main ]
jobs:
docs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: cachix/install-nix-action@v24
- name: Generate docs
run: nix develop --command homelab-generate-docs ./docs
- name: Commit docs
run: |
git add docs/
git commit -m "docs: update homelab documentation" || exit 0
git push
```
### Manual Generation
```bash
# From your homelab directory
nix develop
homelab-generate-docs ./docs
git add docs/ && git commit -m "Update docs"
```
---
*This documentation reflects the live state of your homelab deployment as evaluated by colmena.*

View file

@ -2,8 +2,8 @@
> Current homelab deployment configuration
>
> Generated on: tir 29 jul 16:25:46 CEST 2025
> Working directory: /home/plasmagoat/homelab
> Generated on: $(date)
> Working directory: $(pwd)
## Deployment Summary

View file

@ -2,8 +2,8 @@
> Auto-generated fleet overview
>
> Generated on: tir 29 jul 16:25:32 CEST 2025
> Source: /home/plasmagoat/homelab
> Generated on: $(date)
> Source: $(pwd)
## Fleet Statistics
@ -28,12 +28,6 @@
| `photos` | 1 | minio |
| `sandbox` | 0 | |
### Environment Distribution
| Environment | Node Count |
|-------------|------------|
| production | 2 |
---
*Fleet overview generated from colmena evaluation*

View file

@ -2,7 +2,7 @@
> Detailed per-node configuration
>
> Generated on: tir 29 jul 16:25:40 CEST 2025
> Generated on: $(date)
## Node: photos

View file

@ -2,7 +2,7 @@
> Available services and their configuration options
>
> Generated on: tir 29 jul 16:25:43 CEST 2025
> Generated on: $(date)
This document catalogs all available homelab services, their configuration options, and integration capabilities.
@ -10,6 +10,17 @@ This document catalogs all available homelab services, their configuration optio
**Total Available Services:** 4
## Service Integration Matrix
| Service | Monitoring | Logging | Proxy | Auth Default |
|---------|------------|---------|-------|--------------|
| `gatus` | ❌ | ❌ | ❌ | 🌐 |
| `grafana` | ❌ | ❌ | ❌ | 🌐 |
| `minio` | ❌ | ❌ | ❌ | 🌐 |
| `prometheus` | ❌ | ❌ | ❌ | 🌐 |
**Legend:** ✅ = Enabled by default, ❌ = Available but disabled, 🔒 = Auth required, 🌐 = Public access
## Service Reference
### gatus
@ -18,7 +29,15 @@ This document catalogs all available homelab services, their configuration optio
**Default Port:** `8080`
**Current Deployments:** 0 instance(s)
**Current Deployments:** 0 instance(s) on:
#### Default Integration Status
| Integration | Status | Default Configuration |
|-------------|--------|----------------------|
| 📊 Monitoring | ❌ Disabled | Available but requires `monitoring.enable = true` |
| 📝 Logging | ❌ Disabled | Available but requires `logging.enable = true` |
| 🔀 Proxy | ❌ Disabled | Available but requires `proxy.enable = true` |
#### Core Configuration
@ -27,6 +46,11 @@ homelab.services.gatus = {
enable = true;
port = 8080;
description = "Gatus Status Page";
# Default integrations (adjust as needed)
# monitoring.enable = true; # ❌ Disabled by default
# logging.enable = true; # ❌ Disabled by default
# proxy.enable = true; # ❌ Disabled by default
};
```
@ -47,17 +71,6 @@ homelab.services.gatus = {
};
```
#### Complete Example
```nix
# Full configuration example for gatus
homelab.services.gatus = {
enable = true;
port = 8080;
description = "Gatus Status Page";
};
```
---
### grafana
@ -66,7 +79,15 @@ homelab.services.gatus = {
**Default Port:** `3000`
**Current Deployments:** 0 instance(s)
**Current Deployments:** 0 instance(s) on:
#### Default Integration Status
| Integration | Status | Default Configuration |
|-------------|--------|----------------------|
| 📊 Monitoring | ❌ Disabled | Available but requires `monitoring.enable = true` |
| 📝 Logging | ❌ Disabled | Available but requires `logging.enable = true` |
| 🔀 Proxy | ❌ Disabled | Available but requires `proxy.enable = true` |
#### Core Configuration
@ -75,17 +96,11 @@ homelab.services.grafana = {
enable = true;
port = 3000;
description = "Grafana Metrics Dashboard";
};
```
#### Complete Example
```nix
# Full configuration example for grafana
homelab.services.grafana = {
enable = true;
port = 3000;
description = "Grafana Metrics Dashboard";
# Default integrations (adjust as needed)
# monitoring.enable = true; # ❌ Disabled by default
# logging.enable = true; # ❌ Disabled by default
# proxy.enable = true; # ❌ Disabled by default
};
```
@ -97,7 +112,15 @@ homelab.services.grafana = {
**Default Port:** `9000`
**Current Deployments:** 1 instance(s)
**Current Deployments:** 1 instance(s) on: photos
#### Default Integration Status
| Integration | Status | Default Configuration |
|-------------|--------|----------------------|
| 📊 Monitoring | ❌ Disabled | Available but requires `monitoring.enable = true` |
| 📝 Logging | ❌ Disabled | Available but requires `logging.enable = true` |
| 🔀 Proxy | ❌ Disabled | Available but requires `proxy.enable = true` |
#### Core Configuration
@ -106,6 +129,11 @@ homelab.services.minio = {
enable = true;
port = 9000;
description = "minio";
# Default integrations (adjust as needed)
# monitoring.enable = true; # ❌ Disabled by default
# logging.enable = true; # ❌ Disabled by default
# proxy.enable = true; # ❌ Disabled by default
};
```
@ -123,17 +151,6 @@ homelab.services.minio = {
};
```
#### Complete Example
```nix
# Full configuration example for minio
homelab.services.minio = {
enable = true;
port = 9000;
description = "minio";
};
```
---
### prometheus
@ -142,7 +159,15 @@ homelab.services.minio = {
**Default Port:** `9090`
**Current Deployments:** 0 instance(s)
**Current Deployments:** 0 instance(s) on:
#### Default Integration Status
| Integration | Status | Default Configuration |
|-------------|--------|----------------------|
| 📊 Monitoring | ❌ Disabled | Available but requires `monitoring.enable = true` |
| 📝 Logging | ❌ Disabled | Available but requires `logging.enable = true` |
| 🔀 Proxy | ❌ Disabled | Available but requires `proxy.enable = true` |
#### Core Configuration
@ -151,6 +176,11 @@ homelab.services.prometheus = {
enable = true;
port = 9090;
description = "Prometheus Monitoring Server";
# Default integrations (adjust as needed)
# monitoring.enable = true; # ❌ Disabled by default
# logging.enable = true; # ❌ Disabled by default
# proxy.enable = true; # ❌ Disabled by default
};
```
@ -174,28 +204,17 @@ homelab.services.prometheus = {
};
```
#### Complete Example
```nix
# Full configuration example for prometheus
homelab.services.prometheus = {
enable = true;
port = 9090;
description = "Prometheus Monitoring Server";
};
```
---
## Integration Summary
### Available Integration Types
| Integration | Purpose | Configuration |
|-------------|---------|---------------|
| **Monitoring** | Prometheus metrics + health checks | `monitoring.enable = true` |
| **Logging** | Centralized log collection | `logging.enable = true` |
| **Proxy** | Reverse proxy with SSL + auth | `proxy.enable = true` |
| Integration | Purpose | Default Behavior | Configuration |
|-------------|---------|------------------|---------------|
| **📊 Monitoring** | Prometheus metrics + health checks | Service-dependent | `monitoring.enable = true` |
| **📝 Logging** | Centralized log collection | Service-dependent | `logging.enable = true` |
| **🔀 Proxy** | Reverse proxy with SSL + auth | Service-dependent | `proxy.enable = true` |
### Integration Benefits
@ -203,6 +222,7 @@ homelab.services.prometheus = {
- **📊 Unified Monitoring:** All metrics and health checks appear in Prometheus/Grafana
- **📝 Centralized Logging:** All logs are collected and indexed in Loki
- **🌐 Consistent Access:** All services get consistent subdomain access with SSL
- **🎯 Smart Defaults:** Each service comes with sensible default configurations
---