UNPKG

docker-pilot

Version:

A powerful, scalable Docker CLI library for managing containerized applications of any size

124 lines 2.95 kB
/** * Validation utility functions * Provides validation for various Docker Pilot configurations and inputs */ import { Logger } from './Logger'; import { FileUtils } from './FileUtils'; export interface ValidationResult { valid: boolean; errors: ValidationError[]; warnings: ValidationWarning[]; } export interface ValidationError { field: string; message: string; code: string; value?: any; } export interface ValidationWarning { field: string; message: string; suggestion?: string; } export declare class ValidationUtils { private fileUtils; private i18n; constructor(_logger?: Logger, fileUtils?: FileUtils); /** * Update language for validation messages */ updateLanguage(language: string): void; /** * Validate Docker Pilot configuration */ validateConfig(config: any): Promise<ValidationResult>; /** * Validate business rules beyond schema validation */ private validateBusinessRules; /** * Validate project name */ private validateProjectName; /** * Validate individual service configuration */ private validateService; /** * Validate Docker Compose command */ private validateDockerComposeCommand; /** * Validate plugin paths */ private validatePlugins; /** * Validate backup configuration */ private validateBackupConfig; /** * Validate monitoring configuration */ private validateMonitoringConfig; /** * Check for common misconfigurations */ private checkCommonMisconfigurations; /** * Validate service name format */ private isValidServiceName; /** * Validate port number */ private isValidPort; /** * Check for common port conflicts */ private checkPortConflicts; /** * Validate environment variables */ private validateEnvironmentVariables; /** * Validate volume mounts */ private validateVolumes; /** * Validate CPU limit format */ private validateCpuLimit; /** * Validate memory limit format */ private validateMemoryLimit; /** * Check if value contains sensitive data */ private containsSensitiveData; /** * Validate URL format */ private isValidUrl; /** * Validate cron expression (basic validation) */ private isValidCronExpression; /** * Validate version string */ validateVersion(version: string): boolean; /** * Validate Docker Compose file structure */ validateDockerComposeStructure(composeData: any): Promise<ValidationResult>; /** * Validate individual Docker Compose service */ private validateDockerComposeService; /** * Validate Docker port mapping format */ private isValidPortMapping; } //# sourceMappingURL=ValidationUtils.d.ts.map