feat: Enhance deployment capabilities with direct server deployment tools, email configuration, and comprehensive documentation

This commit is contained in:
ethan.chen
2026-01-07 16:56:31 +08:00
parent 8f8f852ce4
commit 2458bfa111
18 changed files with 1430 additions and 12 deletions

View File

@@ -23,10 +23,20 @@ export interface RouterConfig {
password?: string;
}
export interface EmailConfig {
host?: string;
port?: number;
user?: string;
password?: string;
from?: string;
secure?: boolean;
}
export interface AppConfig {
nas: NASConfig;
server: ServerConfig;
router: RouterConfig;
email: EmailConfig;
footballApiKey?: string;
gameApiKey?: string;
}
@@ -57,6 +67,14 @@ class ConfigManager {
username: process.env.ROUTER_USERNAME,
password: process.env.ROUTER_PASSWORD,
},
email: {
host: process.env.EMAIL_HOST,
port: process.env.EMAIL_PORT ? parseInt(process.env.EMAIL_PORT) : 587,
user: process.env.EMAIL_USER,
password: process.env.EMAIL_PASSWORD,
from: process.env.EMAIL_FROM,
secure: process.env.EMAIL_SECURE === 'true',
},
footballApiKey: process.env.FOOTBALL_API_KEY,
gameApiKey: process.env.GAME_API_KEY,
};
@@ -78,6 +96,10 @@ class ConfigManager {
return this.config.router;
}
getEmailConfig(): EmailConfig {
return this.config.email;
}
reload(): void {
this.config = this.loadConfig();
}