Add homelab installer and services (allprox, authelia, lldap)

This commit is contained in:
Ezequiel C. 2026-09-01 18:32:56 +02:00
parent 68b23f1cbe
commit bb754cdd8c
32 changed files with 2356 additions and 1 deletions

59
installer/src/types.ts Normal file
View file

@ -0,0 +1,59 @@
export interface EnvSpec {
name: string;
label?: string;
description?: string;
default?: string;
required?: boolean;
secret?: boolean;
options?: string[];
generate?: boolean;
}
export interface ServiceMetadata {
id: string;
name: string;
description: string;
version: string;
category?: string;
tags?: string[];
icon?: string;
author?: string;
license?: string;
homepage?: string;
documentation?: string;
compose: Record<string, unknown>;
volumes?: Record<string, unknown>;
networks?: Record<string, unknown>;
env?: EnvSpec[];
dependsOn?: string[];
notes?: string;
}
export interface InstalledService {
id: string;
name: string;
version: string;
installedAt: string;
updatedAt: string;
}
export interface State {
version: number;
services: Record<string, InstalledService>;
}
export interface CatalogEntry {
id: string;
version: string;
path: string;
}
export interface Catalog {
generatedAt?: string;
services: CatalogEntry[];
}
export interface ActionResult {
ok: boolean;
message: string;
}