diff --git a/.gitignore b/.gitignore index 5b05a4480e915d026a51e93740ffb25cd1fd9557..92591045303e9c3c1b0369a4af8d7f6acbe2be42 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,7 @@ config.local.php config/autoload/*.local.php vendor/* -data/cache/* +cache/* .idea deploy.log VERSION diff --git a/CHANGELOG.md b/CHANGELOG.md index f92ba355fde84a8d1d21ec4a072cfd83b5285b6b..0c2ed80ab9aaaf7c0110c3a084e2e630d2ba5343 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -27,13 +27,24 @@ Attention toutefois : le travail de mise en place du dispositif n'en est qu'au t * Interface d'administration des motifs de modification de service dû * Interface d'administration des domaines fonctionnels * Installation possible via Docker d'une version de développement ou de test +* Changements d'organisation des fichiers du projet + * Les fichiers liés à la base de données sont maintenant placés dans /bdd. Un sous-répertoire update recense tous les + fichiers de mises à jour de base de données liés aux nouvelles versions + * Le fichier /bdd/install.sql est à injecter dans un schéma de base de données vide pour toute nouvelle installation de OSE. + * Le dossier data/cache s'appelle maintenant directement /cache + * Les connecteurs sont maintenant placés dans un dossier /connecteurs +* Les procédures d'installation et de mise à jour sont disposibles également dans le Gitlab +(Cf. [`INSTALL.md`](INSTALL.md) et [`UPDATE.md`](UPDATE.md)) ## Notes de mise à jour * Modifiez la structure de votre base de données en exécutant dans SQL developer le script de mise à jour suivant : -`data/Mises à jour/08.1.sql` -Les mises à jour `data/Mises à jour/08.0.1.sql` et `data/Mises à jour/08.0.3.sql` sont inclues dans le précédent fichier. +`bdd/update/08.1.sql` +Les mises à jour `bdd/update/08.0.1.sql` et `bdd/update/08.0.3.sql` sont inclues dans le précédent fichier. Inutile, donc, de les exécuter si vous mettez à jour depuis la 8.0. +* Attention : le dossier de cache est déplacé de /data/cache vers /cache. La procédure de mise à jour devrait lui attribuer +automatiquement les accès nécessaires au bon fonctionnement de l'application. Vous pourrez supprimer manuellement l'ancien +dossier /data/cache qui n'a plus d'utilité. * Attention : au niveau de votre configuration Apache, APPLICATION_ENV peut prendre désormais trois valeurs possibles : dev,test ou prod. Les anciennes valeurs development et production doivent donc être respectivement remplacées par dev et prod. diff --git a/INSTALL.md b/INSTALL.md index 9919c944b40bb1ee5c0930b0bd455d4fdbe03ffd..7270b75baab0e3ad1d5f72c00ae60725ff83a3a1 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -293,7 +293,7 @@ OSE sera accessible sur votre machine, à l'adresse http://ose-test.localhost # Création de la base de données Créez une base de données avec un utilisateur pour OSE, un schéma, puis un tablespace vides. -Un script d'initialisation vous est fourni (répertoire data/Déploiement/ose-ddl.sql). Il vous revient de le lancer pour peupler la base de données. +Un script d'initialisation vous est fourni (répertoire bdd/install.sql). Il vous revient de le lancer pour peupler la base de données. Attention à bien veiller à ce que les accents soient correctement traités. Les caractères du fichier sont en **UTF8**. @@ -354,7 +354,7 @@ OSE est maintenant installé. # Connecteurs Afin de pouvoir intégrer OSE à votre système d'information, -des [connecteurs](https://git.unicaen.fr/open-source/OSE/tree/master/data/D%C3%A9ploiement/Connecteurs) +des [connecteurs](https://git.unicaen.fr/open-source/OSE/tree/master/connecteurs) vous sont fournis à titre d'exemple. Vous devrez en effet les adapter à vos besoins. diff --git a/README.md b/README.md index b9e8ce466d79808dfbfed124fe68c0ef37b252dd..99395f7391c2975a08223ae490baca2f864fa695 100644 --- a/README.md +++ b/README.md @@ -14,4 +14,8 @@ Cf. [`INSTALL.md`](INSTALL.md). ## Procédure de mise à jour -Cf. [`UPDATE.md`](UPDATE.md). \ No newline at end of file +Cf. [`UPDATE.md`](UPDATE.md). + +## Modèle de données de l'application + +Cf. [`doc/Modèle de données`](doc/Modèle de données). \ No newline at end of file diff --git a/UPDATE.md b/UPDATE.md index 21ede9004655533eaa0f2b7b0c46f226beaac9e9..ab6b658e864a41987868f8a918bf37ebd65dfdaf 100644 --- a/UPDATE.md +++ b/UPDATE.md @@ -26,12 +26,13 @@ de travail dans son état originel au moyen de la commande suivante : ## Mise à jour de la base de données -* Dans le répertoire `data/Mises à jour`, si un fichier `.sql` corresopnd à la nouvelle version installée, +* Dans le répertoire `bdd/update`, si un fichier `.sql` corresopnd à la nouvelle version installée, exécutez les requêtes dans SQL Developer pour mettre à jour la base de données. ## Tests -Le fichier `data/Déploiement/Changements.pdf` recense les changements apportés par les différentes versions de l'application. +[La liste des changements](https://ose.unicaen.fr/deploiement/changements.html) +recense les changements apportés par les différentes versions de l'application. Vous êtes invité à tester prioritairement ces changements. ## Passage en production diff --git "a/data/D\303\251ploiement/ose-ddl.sql" b/bdd/install.sql similarity index 100% rename from "data/D\303\251ploiement/ose-ddl.sql" rename to bdd/install.sql diff --git "a/data/Mises \303\240 jour/06.3.2.sql" b/bdd/update/06.3.2.sql similarity index 100% rename from "data/Mises \303\240 jour/06.3.2.sql" rename to bdd/update/06.3.2.sql diff --git "a/data/Mises \303\240 jour/06.3.sql" b/bdd/update/06.3.sql similarity index 100% rename from "data/Mises \303\240 jour/06.3.sql" rename to bdd/update/06.3.sql diff --git "a/data/Mises \303\240 jour/07.0.sql" b/bdd/update/07.0.sql similarity index 100% rename from "data/Mises \303\240 jour/07.0.sql" rename to bdd/update/07.0.sql diff --git "a/data/Mises \303\240 jour/08.0.1.sql" b/bdd/update/08.0.1.sql similarity index 100% rename from "data/Mises \303\240 jour/08.0.1.sql" rename to bdd/update/08.0.1.sql diff --git "a/data/Mises \303\240 jour/08.0.3.sql" b/bdd/update/08.0.3.sql similarity index 100% rename from "data/Mises \303\240 jour/08.0.3.sql" rename to bdd/update/08.0.3.sql diff --git "a/data/Mises \303\240 jour/08.0.sql" b/bdd/update/08.0.sql similarity index 100% rename from "data/Mises \303\240 jour/08.0.sql" rename to bdd/update/08.0.sql diff --git "a/data/Mises \303\240 jour/08.1.sql" b/bdd/update/08.1.sql similarity index 100% rename from "data/Mises \303\240 jour/08.1.sql" rename to bdd/update/08.1.sql diff --git a/bin/ose b/bin/ose index cfd0fccf9639c1aba84465bb3f46c872ad298a76..951e9f4d80a8f741672b02a480148c0ea1b5a8da 100755 --- a/bin/ose +++ b/bin/ose @@ -97,16 +97,16 @@ function install(Console $c, OseAdmin $oa, $fromMaster=true) $c->exec([ "cd $osedir", "git checkout tags/$version", - "mkdir data/cache", - "chmod 777 data/cache", + "mkdir cache", + "chmod 777 cache", "chmod +7 bin/ose", ]); $oa->writeVersion($osedir, $version); }else{ $c->exec([ "cd $osedir", - "mkdir data/cache", - "chmod 777 data/cache", + "mkdir cache", + "chmod 777 cache", "chmod +7 bin/ose", ]); } @@ -152,8 +152,8 @@ function install(Console $c, OseAdmin $oa, $fromMaster=true) $c->exec([ "cd $osedir", "php vendor/bin/doctrine-module orm:generate-proxies", - "chmod -R 777 data/cache/DoctrineProxy", - "chmod -R 777 data/cache/Doctrine", + "chmod -R 777 cache/DoctrineProxy", + "chmod -R 777 cache/Doctrine", ]); // Mise en place des tâches CRON ?? @@ -216,10 +216,10 @@ function update(Console $c, OseAdmin $oa) // Néttoyage des caches et mise à jour des proxies, lancement du script de migration éventuel $c->exec([ "cd $osedir", - "rm -Rf data/cache/*", + "rm -Rf cache/*", "php vendor/bin/doctrine-module orm:generate-proxies", - "chmod -R 777 data/cache/DoctrineProxy", - "chmod -R 777 data/cache/Doctrine", + "chmod -R 777 cache/DoctrineProxy", + "chmod -R 777 cache/Doctrine", "php bin/ose migration $oldVersion $version", ]); diff --git a/config/application.config.php b/config/application.config.php index d775f73b087b06129161ef6342a1fc9cccb37e84..6919bf6780f5f401e5784af7777bcb57a660587a 100755 --- a/config/application.config.php +++ b/config/application.config.php @@ -99,7 +99,7 @@ class AppConfig './module', './vendor', ], - 'cache_dir' => 'data/cache/', + 'cache_dir' => 'cache/', 'config_cache_enabled' => ('prod' == $env), 'module_map_cache_enabled' => ('prod' == $env), ], diff --git a/config/autoload/application.global.php b/config/autoload/application.global.php index 9cbd3bee085f235eaf68864dae5cfdac7b0b550b..53b7d97b688e1c3cdfa7a1aa319494f500d4729a 100755 --- a/config/autoload/application.global.php +++ b/config/autoload/application.global.php @@ -22,7 +22,7 @@ return [ 'result_cache' => 'filesystem', 'hydration_cache' => 'array', 'generate_proxies' => AppConfig::get('bdd', 'generateProxies'), - 'proxy_dir' => 'data/cache/DoctrineProxy', + 'proxy_dir' => 'cache/DoctrineProxy', ], ], ], diff --git a/config/autoload/zenddevelopertools.dev.php b/config/autoload/zenddevelopertools.dev.php index ed016e4d4417c1e7425650c20edb623fe27ef634..a3555eee3980f2c49d23d7e1747ac3bdee4ebaee 100644 --- a/config/autoload/zenddevelopertools.dev.php +++ b/config/autoload/zenddevelopertools.dev.php @@ -41,7 +41,7 @@ return array( * Expects: string * Default: 'data/cache' */ - 'cache_dir' => 'data/cache', + 'cache_dir' => 'cache', /** * If a matches is defined, the profiler will be disabled if the request does not match the pattern. diff --git "a/data/D\303\251ploiement/Connecteurs/Apogee-OSE-calculCharges.xls" b/connecteurs/Apogee-OSE-calculCharges.xls similarity index 100% rename from "data/D\303\251ploiement/Connecteurs/Apogee-OSE-calculCharges.xls" rename to connecteurs/Apogee-OSE-calculCharges.xls diff --git "a/data/D\303\251ploiement/Connecteurs/Apogee-OSE-createTables.sql" b/connecteurs/Apogee-OSE-createTables.sql similarity index 100% rename from "data/D\303\251ploiement/Connecteurs/Apogee-OSE-createTables.sql" rename to connecteurs/Apogee-OSE-createTables.sql diff --git "a/data/D\303\251ploiement/Connecteurs/Apogee-OSE-export.sql" b/connecteurs/Apogee-OSE-export.sql similarity index 100% rename from "data/D\303\251ploiement/Connecteurs/Apogee-OSE-export.sql" rename to connecteurs/Apogee-OSE-export.sql diff --git "a/data/D\303\251ploiement/Connecteurs/Apogee-OSE-lisezMoi.txt" b/connecteurs/Apogee-OSE-lisezMoi.txt similarity index 100% rename from "data/D\303\251ploiement/Connecteurs/Apogee-OSE-lisezMoi.txt" rename to connecteurs/Apogee-OSE-lisezMoi.txt diff --git "a/data/D\303\251ploiement/Connecteurs/Architecture connecteurs OSE.png" b/connecteurs/Architecture connecteurs OSE.png similarity index 100% rename from "data/D\303\251ploiement/Connecteurs/Architecture connecteurs OSE.png" rename to connecteurs/Architecture connecteurs OSE.png diff --git "a/data/D\303\251ploiement/Connecteurs/Connecteurs OSE.sql" b/connecteurs/Connecteurs OSE.sql similarity index 100% rename from "data/D\303\251ploiement/Connecteurs/Connecteurs OSE.sql" rename to connecteurs/Connecteurs OSE.sql diff --git "a/data/D\303\251ploiement/Connecteurs/FCAManager-OSE-controles.sql" b/connecteurs/FCAManager-OSE-controles.sql similarity index 100% rename from "data/D\303\251ploiement/Connecteurs/FCAManager-OSE-controles.sql" rename to connecteurs/FCAManager-OSE-controles.sql diff --git "a/data/D\303\251ploiement/Connecteurs/FCAManager-OSE-export.sql" b/connecteurs/FCAManager-OSE-export.sql similarity index 100% rename from "data/D\303\251ploiement/Connecteurs/FCAManager-OSE-export.sql" rename to connecteurs/FCAManager-OSE-export.sql diff --git "a/data/D\303\251ploiement/Connecteurs/FCAManager-OSE-lisezMoi.txt" b/connecteurs/FCAManager-OSE-lisezMoi.txt similarity index 100% rename from "data/D\303\251ploiement/Connecteurs/FCAManager-OSE-lisezMoi.txt" rename to connecteurs/FCAManager-OSE-lisezMoi.txt diff --git a/module/Application/config/aaa_module.config.php b/module/Application/config/aaa_module.config.php index 69e105b7354695819d5caefde69045aca67cf88f..20bd6a8292618f9a05bd7245408cd2f974e41b3f 100755 --- a/module/Application/config/aaa_module.config.php +++ b/module/Application/config/aaa_module.config.php @@ -51,7 +51,7 @@ $config = [ 'namespace' => 'OSE__' . __NAMESPACE__, ], 'filesystem' => [ - 'directory' => getcwd().'/data/cache/Doctrine', + 'directory' => getcwd().'/cache/Doctrine', ], ], ], diff --git a/module/Application/src/Application/Controller/AbstractController.php b/module/Application/src/Application/Controller/AbstractController.php index b38bb925888a529b4fd5846aceb1ce645e3d1e79..5dcb75061d0f5293ef26b5832e2bead34ae5825b 100755 --- a/module/Application/src/Application/Controller/AbstractController.php +++ b/module/Application/src/Application/Controller/AbstractController.php @@ -57,7 +57,7 @@ abstract class AbstractController extends AbstractActionController */ protected function pdf() { - $pdfPath = getcwd().'/data/cache/mpdf/'; + $pdfPath = getcwd().'/cache/mpdf/'; if (!file_exists($pdfPath)){ mkdir($pdfPath); } diff --git a/module/Application/src/Application/Service/EtatSortieService.php b/module/Application/src/Application/Service/EtatSortieService.php index d2d54e791cdd4c78f1cf9783d8daf9ccbf379253..c8c90c83b88cc59a058c46116a6478aa061a094e 100755 --- a/module/Application/src/Application/Service/EtatSortieService.php +++ b/module/Application/src/Application/Service/EtatSortieService.php @@ -78,7 +78,7 @@ class EtatSortieService extends AbstractEntityService public function genererPdf(EtatSortie $etatSortie, array $filtres): Document { $document = new Document(); - $document->setTmpDir(getcwd() . '/data/cache/'); + $document->setTmpDir(getcwd() . '/cache/'); $document->getPublisher()->setAutoBreak($etatSortie->isAutoBreak()); $document->setPdfOutput(true); if ($etatSortie->hasFichier()) { diff --git a/module/Application/src/Application/Service/ModeleContratService.php b/module/Application/src/Application/Service/ModeleContratService.php index b89bef56cfd3b791abf4b6c097c069a0a896ec60..570772dc98b07b2409bf3bef0a2919c4705a2038 100755 --- a/module/Application/src/Application/Service/ModeleContratService.php +++ b/module/Application/src/Application/Service/ModeleContratService.php @@ -66,7 +66,7 @@ class ModeleContratService extends AbstractEntityService } $document = new Document(); - $document->setTmpDir(getcwd() . '/data/cache/'); + $document->setTmpDir(getcwd() . '/cache/'); if ($modele->hasFichier()) { $document->loadFromData(stream_get_contents($modele->getFichier(),-1,0)); diff --git a/public/install.php b/public/install.php index 98d223e20ea55ef4f0dbe1187627cb90e5b479f7..5de83dfba814cd932f3b67f63d8f6603b6d0ec8c 100755 --- a/public/install.php +++ b/public/install.php @@ -226,10 +226,10 @@ class Installateur return true; } }, - 'Droit d\'écriture sur le dossier data/cache' => function () { - $cacheDir = __DIR__ . '/../data/cache'; + 'Droit d\'écriture sur le dossier cache' => function () { + $cacheDir = __DIR__ . '/../cache'; - return is_writable($cacheDir) ? true : 'Répertoire data/cache non accessible en écriture'; + return is_writable($cacheDir) ? true : 'Répertoire cache non accessible en écriture'; }, 'Présence d\'UnoConv' => function () { return substr(shell_exec('unoconv --version'), 0, 7) == 'unoconv' ? true : 'Commande "unoconv" introuvable'; @@ -360,8 +360,8 @@ class Installateur public function affTests() { /* Au besoin, on supprime le cache de onfiguration */ - if (file_exists('data/cache/module-config-cache.php')){ - unlink('data/cache/module-config-cache.php'); + if (file_exists('cache/module-config-cache.php')){ + unlink('cache/module-config-cache.php'); } $tests = $this->makeTests();