60 lines
2.1 KiB
JavaScript
60 lines
2.1 KiB
JavaScript
const fs = require('fs');
|
|
const path = require('path');
|
|
const crypto = require('crypto');
|
|
|
|
// Fonction pour générer un hash de dossier
|
|
function generateFolderHash() {
|
|
return crypto.randomBytes(16).toString('hex');
|
|
}
|
|
|
|
// Fonction pour créer la structure de dossiers
|
|
function createFolderStructure(folderHash) {
|
|
console.log(`[FOLDER] Création de la structure pour le hash: ${folderHash}`);
|
|
console.log(`[FOLDER] Répertoire de travail: ${process.cwd()}`);
|
|
|
|
// Créer les dossiers racines s'ils n'existent pas
|
|
const uploadsDir = 'uploads';
|
|
const cacheDir = 'cache';
|
|
|
|
console.log(`[FOLDER] Vérification de l'existence de ${uploadsDir}: ${fs.existsSync(uploadsDir)}`);
|
|
console.log(`[FOLDER] Vérification de l'existence de ${cacheDir}: ${fs.existsSync(cacheDir)}`);
|
|
|
|
if (!fs.existsSync(uploadsDir)) {
|
|
fs.mkdirSync(uploadsDir, { recursive: true });
|
|
console.log(`[FOLDER] Dossier racine créé: ${uploadsDir}`);
|
|
}
|
|
if (!fs.existsSync(cacheDir)) {
|
|
fs.mkdirSync(cacheDir, { recursive: true });
|
|
console.log(`[FOLDER] Dossier racine créé: ${cacheDir}`);
|
|
}
|
|
|
|
const folderPath = path.join(uploadsDir, folderHash);
|
|
const cachePath = path.join(cacheDir, folderHash);
|
|
|
|
console.log(`[FOLDER] Chemin du dossier uploads: ${folderPath}`);
|
|
console.log(`[FOLDER] Chemin du dossier cache: ${cachePath}`);
|
|
|
|
if (!fs.existsSync(folderPath)) {
|
|
fs.mkdirSync(folderPath, { recursive: true });
|
|
console.log(`[FOLDER] Dossier uploads créé: ${folderPath}`);
|
|
}
|
|
if (!fs.existsSync(cachePath)) {
|
|
fs.mkdirSync(cachePath, { recursive: true });
|
|
console.log(`[FOLDER] Dossier cache créé: ${cachePath}`);
|
|
}
|
|
|
|
return { folderPath, cachePath };
|
|
}
|
|
|
|
// Test
|
|
console.log('=== Test de création de dossier ===');
|
|
const folderHash = generateFolderHash();
|
|
console.log(`Hash généré: ${folderHash}`);
|
|
|
|
const result = createFolderStructure(folderHash);
|
|
console.log('Résultat:', result);
|
|
|
|
console.log('\n=== Vérification des dossiers créés ===');
|
|
console.log('Dossiers uploads:', fs.readdirSync('uploads'));
|
|
console.log('Dossiers cache:', fs.readdirSync('cache'));
|