feat: add external module architecture

This commit is contained in:
reaper
2026-08-14 12:08:21 -05:00
parent 133a3d428d
commit 31e6150ecd
31 changed files with 389 additions and 985 deletions
+26
View File
@@ -13,6 +13,8 @@ export interface AuroraProjectSummary {
httpsurl: string
mutagen_enabled: boolean
mutagen_status?: string
module_available?: boolean
missing_module_id?: string
}
export interface AuroraServiceHostPortMapping {
@@ -126,10 +128,21 @@ export interface AuroraModuleManifest {
category: AuroraModuleCategory
description: string
icon?: string
main?: string
dependencies: string[]
conflicts: string[]
defaults?: { docroot?: string }
settings: AuroraModuleSetting[]
aurora: { core: string; moduleApi: string }
creation?: {
databases?: Array<'mariadb' | 'postgres'>
setup?: AuroraModuleSetting[]
}
hooks?: Partial<Record<AuroraModuleLifecycleHook, AuroraModuleCommand[]>>
project?: {
adminPath?: string
tools?: Array<{ id: string; label: string; hook: AuroraModuleLifecycleHook }>
}
compose?: {
service: string
image: string
@@ -138,6 +151,14 @@ export interface AuroraModuleManifest {
}
}
export type AuroraModuleLifecycleHook = 'projectCreate' | 'projectStart' | 'projectRemove' | 'packageUninstall'
export interface AuroraModuleCommand {
command: string
args: string[]
operationLabel?: string
}
export interface AuroraInstalledModule {
id: string
name: string
@@ -145,6 +166,11 @@ export interface AuroraInstalledModule {
category: AuroraModuleCategory
}
export interface AuroraModuleInstallResult {
manifest: AuroraModuleManifest
installedPath: string
}
export interface AuroraAddonRegistryEntry {
title: string
github_url: string