2024-09-18 00:19:33 -07:00
|
|
|
import { CacheConfig } from './configs/cache.config';
|
2024-08-14 02:30:26 -07:00
|
|
|
import { CredentialsConfig } from './configs/credentials.config';
|
|
|
|
import { DatabaseConfig } from './configs/database.config';
|
2024-09-18 00:19:33 -07:00
|
|
|
import { EndpointsConfig } from './configs/endpoints.config';
|
2024-08-14 02:30:26 -07:00
|
|
|
import { EventBusConfig } from './configs/event-bus.config';
|
2024-09-18 00:19:33 -07:00
|
|
|
import { ExternalSecretsConfig } from './configs/external-secrets.config';
|
2024-08-14 02:30:26 -07:00
|
|
|
import { ExternalStorageConfig } from './configs/external-storage.config';
|
2024-10-21 03:57:37 -07:00
|
|
|
import { GenericConfig } from './configs/generic.config';
|
2024-10-01 03:16:09 -07:00
|
|
|
import { LoggingConfig } from './configs/logging.config';
|
2024-10-17 01:47:17 -07:00
|
|
|
import { MultiMainSetupConfig } from './configs/multi-main-setup.config';
|
2024-09-18 00:19:33 -07:00
|
|
|
import { NodesConfig } from './configs/nodes.config';
|
|
|
|
import { PublicApiConfig } from './configs/public-api.config';
|
2024-10-02 01:31:56 -07:00
|
|
|
import { TaskRunnersConfig } from './configs/runners.config';
|
|
|
|
export { TaskRunnersConfig } from './configs/runners.config';
|
2024-08-12 02:03:37 -07:00
|
|
|
import { ScalingModeConfig } from './configs/scaling-mode.config';
|
2024-09-24 08:49:22 -07:00
|
|
|
import { SentryConfig } from './configs/sentry.config';
|
2024-09-18 00:19:33 -07:00
|
|
|
import { TemplatesConfig } from './configs/templates.config';
|
2024-08-14 02:30:26 -07:00
|
|
|
import { UserManagementConfig } from './configs/user-management.config';
|
2024-09-18 00:19:33 -07:00
|
|
|
import { VersionNotificationsConfig } from './configs/version-notifications.config';
|
|
|
|
import { WorkflowsConfig } from './configs/workflows.config';
|
|
|
|
import { Config, Env, Nested } from './decorators';
|
2024-10-23 02:54:53 -07:00
|
|
|
export { Config, Env, Nested } from './decorators';
|
2024-07-05 02:43:27 -07:00
|
|
|
|
2024-10-09 03:56:31 -07:00
|
|
|
export { LOG_SCOPES } from './configs/logging.config';
|
|
|
|
export type { LogScope } from './configs/logging.config';
|
|
|
|
|
2024-07-05 02:43:27 -07:00
|
|
|
@Config
|
|
|
|
export class GlobalConfig {
|
|
|
|
@Nested
|
2024-08-14 02:30:26 -07:00
|
|
|
database: DatabaseConfig;
|
2024-07-05 02:43:27 -07:00
|
|
|
|
|
|
|
@Nested
|
2024-08-14 02:30:26 -07:00
|
|
|
credentials: CredentialsConfig;
|
2024-07-05 02:43:27 -07:00
|
|
|
|
|
|
|
@Nested
|
2024-08-14 02:30:26 -07:00
|
|
|
userManagement: UserManagementConfig;
|
2024-07-17 06:36:40 -07:00
|
|
|
|
2024-07-17 10:11:46 -07:00
|
|
|
@Nested
|
2024-08-14 02:30:26 -07:00
|
|
|
versionNotifications: VersionNotificationsConfig;
|
2024-07-17 10:11:46 -07:00
|
|
|
|
2024-07-17 06:36:40 -07:00
|
|
|
@Nested
|
2024-08-14 02:30:26 -07:00
|
|
|
publicApi: PublicApiConfig;
|
2024-07-18 01:52:41 -07:00
|
|
|
|
|
|
|
@Nested
|
2024-08-14 02:30:26 -07:00
|
|
|
externalSecrets: ExternalSecretsConfig;
|
2024-07-19 01:33:28 -07:00
|
|
|
|
|
|
|
@Nested
|
2024-08-14 02:30:26 -07:00
|
|
|
templates: TemplatesConfig;
|
2024-07-19 04:25:44 -07:00
|
|
|
|
|
|
|
@Nested
|
2024-08-14 02:30:26 -07:00
|
|
|
eventBus: EventBusConfig;
|
2024-07-23 04:32:50 -07:00
|
|
|
|
|
|
|
@Nested
|
2024-08-14 02:30:26 -07:00
|
|
|
nodes: NodesConfig;
|
2024-07-24 04:08:20 -07:00
|
|
|
|
|
|
|
@Nested
|
2024-08-14 02:30:26 -07:00
|
|
|
externalStorage: ExternalStorageConfig;
|
2024-07-24 05:38:29 -07:00
|
|
|
|
|
|
|
@Nested
|
2024-08-14 02:30:26 -07:00
|
|
|
workflows: WorkflowsConfig;
|
2024-07-29 05:32:20 -07:00
|
|
|
|
2024-09-24 08:49:22 -07:00
|
|
|
@Nested
|
|
|
|
sentry: SentryConfig;
|
|
|
|
|
2024-07-29 05:32:20 -07:00
|
|
|
/** Path n8n is deployed to */
|
|
|
|
@Env('N8N_PATH')
|
2024-08-15 04:58:20 -07:00
|
|
|
path: string = '/';
|
2024-07-29 05:32:20 -07:00
|
|
|
|
|
|
|
/** Host name n8n can be reached */
|
|
|
|
@Env('N8N_HOST')
|
2024-08-15 04:58:20 -07:00
|
|
|
host: string = 'localhost';
|
2024-07-29 05:32:20 -07:00
|
|
|
|
|
|
|
/** HTTP port n8n can be reached */
|
|
|
|
@Env('N8N_PORT')
|
2024-08-15 04:58:20 -07:00
|
|
|
port: number = 5678;
|
2024-07-29 05:32:20 -07:00
|
|
|
|
|
|
|
/** IP address n8n should listen on */
|
|
|
|
@Env('N8N_LISTEN_ADDRESS')
|
2024-08-15 04:58:20 -07:00
|
|
|
listen_address: string = '0.0.0.0';
|
2024-07-29 05:32:20 -07:00
|
|
|
|
|
|
|
/** HTTP Protocol via which n8n can be reached */
|
|
|
|
@Env('N8N_PROTOCOL')
|
2024-08-14 02:30:26 -07:00
|
|
|
protocol: 'http' | 'https' = 'http';
|
2024-07-31 08:45:11 -07:00
|
|
|
|
|
|
|
@Nested
|
2024-08-14 02:30:26 -07:00
|
|
|
endpoints: EndpointsConfig;
|
2024-08-02 08:10:03 -07:00
|
|
|
|
|
|
|
@Nested
|
2024-08-14 02:30:26 -07:00
|
|
|
cache: CacheConfig;
|
2024-08-12 02:03:37 -07:00
|
|
|
|
|
|
|
@Nested
|
|
|
|
queue: ScalingModeConfig;
|
2024-10-01 03:16:09 -07:00
|
|
|
|
|
|
|
@Nested
|
|
|
|
logging: LoggingConfig;
|
2024-10-02 01:31:56 -07:00
|
|
|
|
|
|
|
@Nested
|
|
|
|
taskRunners: TaskRunnersConfig;
|
2024-10-17 01:47:17 -07:00
|
|
|
|
|
|
|
@Nested
|
|
|
|
multiMainSetup: MultiMainSetupConfig;
|
2024-10-21 03:57:37 -07:00
|
|
|
|
|
|
|
@Nested
|
|
|
|
generic: GenericConfig;
|
2024-07-05 02:43:27 -07:00
|
|
|
}
|