updated docs
This commit is contained in:
parent
ce8c543e84
commit
73d2f44d74
14 changed files with 940 additions and 913 deletions
|
|
@ -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.*
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
||||
|
|
|
|||
|
|
@ -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*
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
> Detailed per-node configuration
|
||||
>
|
||||
> Generated on: tir 29 jul 16:25:40 CEST 2025
|
||||
> Generated on: $(date)
|
||||
|
||||
## Node: photos
|
||||
|
||||
|
|
|
|||
126
docs/services.md
126
docs/services.md
|
|
@ -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
|
||||
|
||||
---
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue