2024-10-03 15:28:36 -04:00
|
|
|
import { ImmichEnvironment, ImmichWorker, LogLevel } from 'src/enum';
|
2024-09-27 10:28:56 -04:00
|
|
|
import { VectorExtension } from 'src/interfaces/database.interface';
|
|
|
|
|
|
|
|
|
|
export const IConfigRepository = 'IConfigRepository';
|
|
|
|
|
|
|
|
|
|
export interface EnvData {
|
2024-10-16 18:12:13 -04:00
|
|
|
host?: string;
|
2024-10-03 13:29:40 -04:00
|
|
|
port: number;
|
2024-10-02 08:37:26 -04:00
|
|
|
environment: ImmichEnvironment;
|
2024-10-01 16:03:55 -04:00
|
|
|
configFile?: string;
|
2024-10-02 08:37:26 -04:00
|
|
|
logLevel?: LogLevel;
|
|
|
|
|
|
2024-10-03 16:33:43 -04:00
|
|
|
buildMetadata: {
|
|
|
|
|
build?: string;
|
|
|
|
|
buildUrl?: string;
|
|
|
|
|
buildImage?: string;
|
|
|
|
|
buildImageUrl?: string;
|
|
|
|
|
repository?: string;
|
|
|
|
|
repositoryUrl?: string;
|
|
|
|
|
sourceRef?: string;
|
|
|
|
|
sourceCommit?: string;
|
|
|
|
|
sourceUrl?: string;
|
|
|
|
|
thirdPartySourceUrl?: string;
|
|
|
|
|
thirdPartyBugFeatureUrl?: string;
|
|
|
|
|
thirdPartyDocumentationUrl?: string;
|
|
|
|
|
thirdPartySupportUrl?: string;
|
|
|
|
|
};
|
|
|
|
|
|
2024-09-27 10:28:56 -04:00
|
|
|
database: {
|
2024-10-03 17:48:40 -04:00
|
|
|
url?: string;
|
|
|
|
|
host: string;
|
|
|
|
|
port: number;
|
|
|
|
|
username: string;
|
|
|
|
|
password: string;
|
|
|
|
|
name: string;
|
2024-09-27 10:28:56 -04:00
|
|
|
skipMigrations: boolean;
|
|
|
|
|
vectorExtension: VectorExtension;
|
|
|
|
|
};
|
2024-10-02 08:37:26 -04:00
|
|
|
|
2024-10-03 15:45:37 -04:00
|
|
|
licensePublicKey: {
|
|
|
|
|
client: string;
|
|
|
|
|
server: string;
|
|
|
|
|
};
|
|
|
|
|
|
2024-10-04 17:09:02 -04:00
|
|
|
resourcePaths: {
|
|
|
|
|
lockFile: string;
|
|
|
|
|
geodata: {
|
|
|
|
|
dateFile: string;
|
|
|
|
|
admin1: string;
|
|
|
|
|
admin2: string;
|
|
|
|
|
cities500: string;
|
|
|
|
|
naturalEarthCountriesPath: string;
|
|
|
|
|
};
|
|
|
|
|
web: {
|
|
|
|
|
root: string;
|
|
|
|
|
indexHtml: string;
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
|
2024-10-01 13:04:37 -04:00
|
|
|
storage: {
|
|
|
|
|
ignoreMountCheckErrors: boolean;
|
|
|
|
|
};
|
2024-10-02 08:37:26 -04:00
|
|
|
|
2024-10-03 15:28:36 -04:00
|
|
|
workers: ImmichWorker[];
|
|
|
|
|
|
2024-10-03 16:58:15 -04:00
|
|
|
noColor: boolean;
|
2024-10-02 08:37:26 -04:00
|
|
|
nodeVersion?: string;
|
2024-09-27 10:28:56 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export interface IConfigRepository {
|
|
|
|
|
getEnv(): EnvData;
|
|
|
|
|
}
|