mirror of
https://github.com/Abdulazizzn/n8n-enterprise-unlocked.git
synced 2025-12-17 01:56:46 +00:00
fix(core): Restore old names for pruning config keys (#11782)
This commit is contained in:
@@ -1,21 +1,32 @@
|
||||
import { Config, Env } from '../decorators';
|
||||
import { Config, Env, Nested } from '../decorators';
|
||||
|
||||
@Config
|
||||
export class PruningConfig {
|
||||
class PruningIntervalsConfig {
|
||||
/** How often (minutes) execution data should be hard-deleted. */
|
||||
@Env('EXECUTIONS_DATA_PRUNE_HARD_DELETE_INTERVAL')
|
||||
hardDelete: number = 15;
|
||||
|
||||
/** How often (minutes) execution data should be soft-deleted */
|
||||
@Env('EXECUTIONS_DATA_PRUNE_SOFT_DELETE_INTERVAL')
|
||||
softDelete: number = 60;
|
||||
}
|
||||
|
||||
@Config
|
||||
export class ExecutionsConfig {
|
||||
/** Whether to delete past executions on a rolling basis. */
|
||||
@Env('EXECUTIONS_DATA_PRUNE')
|
||||
isEnabled: boolean = true;
|
||||
pruneData: boolean = true;
|
||||
|
||||
/** How old (hours) a finished execution must be to qualify for soft-deletion. */
|
||||
@Env('EXECUTIONS_DATA_MAX_AGE')
|
||||
maxAge: number = 336;
|
||||
pruneDataMaxAge: number = 336;
|
||||
|
||||
/**
|
||||
* Max number of finished executions to keep in database. Does not necessarily
|
||||
* prune to the exact max number. `0` for unlimited.
|
||||
*/
|
||||
@Env('EXECUTIONS_DATA_PRUNE_MAX_COUNT')
|
||||
maxCount: number = 10_000;
|
||||
pruneDataMaxCount: number = 10_000;
|
||||
|
||||
/**
|
||||
* How old (hours) a finished execution must be to qualify for hard-deletion.
|
||||
@@ -23,13 +34,8 @@ export class PruningConfig {
|
||||
* them while building a workflow.
|
||||
*/
|
||||
@Env('EXECUTIONS_DATA_HARD_DELETE_BUFFER')
|
||||
hardDeleteBuffer: number = 1;
|
||||
pruneDataHardDeleteBuffer: number = 1;
|
||||
|
||||
/** How often (minutes) execution data should be hard-deleted. */
|
||||
@Env('EXECUTIONS_DATA_PRUNE_HARD_DELETE_INTERVAL')
|
||||
hardDeleteInterval: number = 15;
|
||||
|
||||
/** How often (minutes) execution data should be soft-deleted */
|
||||
@Env('EXECUTIONS_DATA_PRUNE_SOFT_DELETE_INTERVAL')
|
||||
softDeleteInterval: number = 60;
|
||||
@Nested
|
||||
pruneDataIntervals: PruningIntervalsConfig;
|
||||
}
|
||||
@@ -4,6 +4,7 @@ import { DatabaseConfig } from './configs/database.config';
|
||||
import { DiagnosticsConfig } from './configs/diagnostics.config';
|
||||
import { EndpointsConfig } from './configs/endpoints.config';
|
||||
import { EventBusConfig } from './configs/event-bus.config';
|
||||
import { ExecutionsConfig } from './configs/executions.config';
|
||||
import { ExternalSecretsConfig } from './configs/external-secrets.config';
|
||||
import { ExternalStorageConfig } from './configs/external-storage.config';
|
||||
import { GenericConfig } from './configs/generic.config';
|
||||
@@ -11,7 +12,6 @@ import { LicenseConfig } from './configs/license.config';
|
||||
import { LoggingConfig } from './configs/logging.config';
|
||||
import { MultiMainSetupConfig } from './configs/multi-main-setup.config';
|
||||
import { NodesConfig } from './configs/nodes.config';
|
||||
import { PruningConfig } from './configs/pruning.config';
|
||||
import { PublicApiConfig } from './configs/public-api.config';
|
||||
import { TaskRunnersConfig } from './configs/runners.config';
|
||||
import { ScalingModeConfig } from './configs/scaling-mode.config';
|
||||
@@ -26,7 +26,7 @@ import { Config, Env, Nested } from './decorators';
|
||||
export { Config, Env, Nested } from './decorators';
|
||||
export { TaskRunnersConfig } from './configs/runners.config';
|
||||
export { SecurityConfig } from './configs/security.config';
|
||||
export { PruningConfig } from './configs/pruning.config';
|
||||
export { ExecutionsConfig } from './configs/executions.config';
|
||||
export { FrontendBetaFeatures, FrontendConfig } from './configs/frontend.config';
|
||||
export { LOG_SCOPES } from './configs/logging.config';
|
||||
export type { LogScope } from './configs/logging.config';
|
||||
@@ -117,7 +117,7 @@ export class GlobalConfig {
|
||||
security: SecurityConfig;
|
||||
|
||||
@Nested
|
||||
pruning: PruningConfig;
|
||||
executions: ExecutionsConfig;
|
||||
|
||||
@Nested
|
||||
diagnostics: DiagnosticsConfig;
|
||||
|
||||
@@ -272,13 +272,15 @@ describe('GlobalConfig', () => {
|
||||
blockFileAccessToN8nFiles: true,
|
||||
daysAbandonedWorkflow: 90,
|
||||
},
|
||||
pruning: {
|
||||
isEnabled: true,
|
||||
maxAge: 336,
|
||||
maxCount: 10_000,
|
||||
hardDeleteBuffer: 1,
|
||||
hardDeleteInterval: 15,
|
||||
softDeleteInterval: 60,
|
||||
executions: {
|
||||
pruneData: true,
|
||||
pruneDataMaxAge: 336,
|
||||
pruneDataMaxCount: 10_000,
|
||||
pruneDataHardDeleteBuffer: 1,
|
||||
pruneDataIntervals: {
|
||||
hardDelete: 15,
|
||||
softDelete: 60,
|
||||
},
|
||||
},
|
||||
diagnostics: {
|
||||
enabled: false,
|
||||
|
||||
Reference in New Issue
Block a user