[dev] Erreurs à la création d'une nouvelle édition
1 : ./max.sh --new-edition
génère une erreur :
Identifiant du projet ?test
Chemin de la collection XML?test
Vocabulaire XML du projet (tei, ead, ...)?tei
fs.js:137
throw new ERR_INVALID_CALLBACK();
^
TypeError [ERR_INVALID_CALLBACK]: Callback must be a function
at makeCallback (fs.js:137:11)
at Object.rename (fs.js:574:14)
at /opt/git/mrshcaen/MaxDev/tools/edition_manager.js:77:5
at FSReqWrap.oncomplete (fs.js:141:20)
Dossier des sources XML à charger ?
2 : fichier de config de la nouvelle édition
le fichier test_config_inc.xml n'est pas ajouté au dossier à /editions/test et reste dans /tools
Proposition de modifications dans /tools/edition_manager.js
- création du dossier en amont
fs.mkdir( EDITIONS_FOLDER_PATH + id + "/", function(){});
- ajout d'un callback à
fs.rename(filename, EDITIONS_FOLDER_PATH + id + "/" + filename, function(){});
/*
Substitution des variables de l'édition au sein du template
de base.
*/
function create_project_baseconf(id, db, type_env){
var template = fs.readFileSync(TEMPLATE_CONFIG_FILE, {encoding: 'utf-8'})
template = template.replace("%ID%",id).replace("%DB%",db).replace("%ENV%",type_env);
//Écriture du fichier de config.
var filename = id +"_config_inc.xml";
fs.writeFile(filename, template, function(err) {
if(err) {
return console.log(err);
}
//Déplacement du fichier créé dans le répertoire de l'édition.
fs.mkdir( EDITIONS_FOLDER_PATH + id + "/", function(){});
console.log( "=== Création du dossier de l'édition " + id + " - OK");
fs.rename(filename, EDITIONS_FOLDER_PATH + id + "/" + filename, function(){});
console.log( "=== Création du fichier de configuration " + filename + " - OK");
include_baseconf(EDITIONS_FOLDER_PATH + id + "/" + filename);
});
}
Edited by Guillaume Porte