UNPKG

netget

Version:

Rette Adepto/ Recibido Directamente.

70 lines (61 loc) 2.28 kB
// netget/src/scripts/init_dirs.js import path from 'path'; import { ensureDirectoryExists, pathExists } from './pathUtils.js'; const BASE_DIR = path.join('/opt/','.get'); const DIRECTORIES = { getPath: BASE_DIR, static: path.join(BASE_DIR, 'static'), devPath: path.join(BASE_DIR, 'dev'), devStatic: path.join(BASE_DIR, 'dev', 'static') }; /* Safety and Non-Destructive Behavior No Deletion or Overwriting: The script does not contain any commands to delete or overwrite files or directories. The fs.mkdirSync() function only creates directories; it does not modify or delete existing files or directories. Preservation of Existing Content: If a directory already exists, fs.mkdirSync() with { recursive: true } does nothing to that directory or its contents. It simply moves on without changing anything in the existing directory structure.*/ /** * Initializes all necessary directories and checks their permissions. * @category Utils * @subcategory General * @module GETDirs */ function initializeDirectories() { Object.values(DIRECTORIES).forEach(dir => { ensureDirectoryExists(dir); // Optional: Check and correct permissions after creation // checkPermissions(dir, 0o755); // Uncomment if needed }); } /** * Verifies that all necessary directories exist. * @returns {boolean} True if all directories exist, false otherwise. */ function verifyInitialization() { const initStatus = {}; Object.values(DIRECTORIES).forEach(dir => { try { ensureDirectoryExists(dir); initStatus[dir] = pathExists(dir); } catch (error) { initStatus[dir] = false; } }); const allDirsInitialized = Object.values(initStatus).every(status => status); if (allDirsInitialized) { console.log(".get successfully initialized."); } else { console.error(".get failed to initialize:", initStatus); } return allDirsInitialized; } /** * Get paths to important directories. * @returns {object} Object containing paths to key directories. * @category Utils * @subcategory General * @module GETDirs */ function getDirectoryPaths() { return DIRECTORIES; } export { initializeDirectories, verifyInitialization, getDirectoryPaths };