Quick links: Content - sections - sub sections
EN FR
Quick Search Advanced search
 
Page

  [Opened] Personnalisation et manipulation du répertoire temp

Posted by Maurice on 05/21/2008 16:57

Bonjour,

J'aimerais pouvoir modifier le chemin du répertoire "temp" des applications en relatif par rapport à l'appli (minitut pour le minitutorial) et non pas relatif par rapport au framework jelix lui-meme,

J'ai vu que la variable JELIX_APP_TEMP_PATH pouvait être modifiée dans le fichier "application.init.php" en remplaçant '../temp/minitut/' par './var/temp/'. Mais existe t'il un moyen robuste (i.e. sans oublier de point d'entrée) de __modifier la valeur par défaut__ de ce répertoire ?

Ensuite, existe-il un moyen de changer les droits des repertoires caches créés de façon à ce qu'ils puissent être regénérés par un serveur différents (apache, nobody, ...) par exemple en donnant les droits pour tous (oui, oui : 777 !) à ces répertoires ?

Ensuite, existe-il un moyen simple de régénérer le cache (qui contient des chemins absolu en dur) automatiquement lors d'un changement de serveur (e.g; rsync d'un site du localhost vers un serveur).
On pourrait imaginer de pouvoir créer un fichier vide du style

  touch minitut/var/temp/.clearcache

Ce fichier vide forcerait la regénération du cache, et serait supprimé lors de cette génération.

Maurice

  [Opened] Re: Personnalisation et anipulation du répertoire temp

Reply #1 Posted by doubleface on 05/21/2008 19:01

Pour ce qui est de la régénération du cache, tu peux utiliser la commande jelix-scripts cleartemp.

php jelix.php --nom_application cleartemp

qui va vider le cache et donc forcer sa régénération.

  [Opened] Re: Personnalisation et anipulation du répertoire temp

Reply #2 Posted by laurentj on 05/21/2008 22:07

salut

j'aimerais pouvoir modifier le chemin du répertoire "temp" des applications en relatif par rapport à l'appli (minitut pour le minitutorial) et non pas relatif par rapport au framework jelix lui-meme,

Je ne vois pas où le repertoire temp est relatif au framework...

Tu fais ce que tu veux dans ton fichier application.init.php. Si les chemins sont tous définis dans ce fichier, ce n'est pas pour rien ;-)

À part ça, pour définir des repertoires et des droits par défaut lors de la création d'une application, modifie le fichier lib/jelix-scripts/scripts.conf.php, ou encore, pour éviter que tes modifs soient écrasées par une mise à jour de jelix, copie ce fichier avec un autre nom, et indique ce nom dans une variable d'environnement JELIX_CONFIG.

  [Opened] Re: Personnalisation et anipulation du répertoire temp

Reply #3 Posted by laurentj on 05/22/2008 16:33

qui est executé vers les droits de l'utilisateur alors que ces fichiers sont créés par apache (donc pas possible de les supprimer sans passer admin ou par sudo !)

Ça me parait normal non ? Je ne vois pas ce qu'on peut faire de plus coté jélix. Aprés il faut passer par de la conf dans apache, ou autre.

Par exemple je solution proposée consisterait à ce que tout fichier ou répertoire créé par jelix soit en mode 777)

mettre le mode 777 est trés trés mal en matière de sécurité (même pour des fichiers temp) C'est vivement déconseillé. Comme je disais, à toi de configurer apache ou ton système comme il faut. Ce n'est pas du ressort de Jelix.

et jelix devrait chercher dans le répertoire courant (puis parent, ...,)

Impossible, parce que sur des distrib linux par exemple, tu as les applis dans /usr/bin/tonappli/, les fichiers temps dans /temp/tonappli, les fichiers de config dans /etc/tonappli, jelix dans /usr/lib/ etc..

bref, faire une telle recherche ne fonctionnera pas sur toute les config. Il n'y a que le fichier scripts.conf.php qui peut indiquer où tout se trouve

le fichier "application.init.php" (en temps que Makefile pour jelix) p

le "Makefile", c'est le fichier scripts.conf.php justement

pour tout savoir sur l'appli en cours (et donc par besoin de de --myapp à chaque fois)

Si j'ai ajouté le paramètre --myapp, c'est bien parce que c'était nécessaire. En général je ne met pas de paramètre pour le plaisir d'avoir des paramètres ;-)

mais ne serait-ce pas mieux (et plus robuste aux évolution de jelix) d'accepter plutot (ou en plus) une variable JELIX_USER_CONFIG pour un fichier qui serait chargé avant (à cause des define) le fichier "scripts.conf.php". Du coup, ce dernier devrait tester l'existance des constantes avant de les redéfinir.

Cela permettrait de ne mettre que les trois ou quatre variables qui nous intéressent, et laisser jelix définir les autres (qui peuvent évoluer à notre insu au gré des versions).

bonne remarque. Propose un patch ;-)

  [Opened] Re: Personnalisation et manipulation du répertoire temp

Reply #4 Posted by Maurice on 06/04/2008 16:41

Pour ceux qui seraient intéressés pour automatiser la création du répertoire temp (e.g dans un sous répertoire de /tmp/ par exemple, ou ailleurs) il y a une discussion sur le ticket603 (ne faites pas attention au subject de ce ticket, sucseptible d'être modifié)

Ce serait bien que des habitués des hébergements mutualisés, ou des serveurs php sous windows ou sous unix (si ça existe) donnent leurs différents points de vue.

Maurice

  [Opened] Re: Personnalisation et manipulation du répertoire temp

Reply #5 Posted by laurentj on 06/04/2008 17:57

C'est bien pour cela que je demandais un moyen de supprimer et de regénérer automatiquement les caches sur le serveur (par exemple par la detection dans fichier vide du style ".clearcache" ou mieux : par la détection d'une erreur du style "trouve pas un des répertoires JELIX_DIR ou JELIX-APP_DIR")

Pourquoi veux tu supprimer ? Il me semble qu'avec rsync, tu peux indiquer ce que tu veux copier ou non. Donc dis lui de ne pas copier le contenu des repertoires temp.

Aprés jelix regènere automatiquement les fichiers caches...

Ce serait bien que des habitués des hébergements mutualisés

Le voilà le problème : à aucun moment tu n'a dit le contexte. Déjà tu vois, dire que tu veux installer et créer des applications dans le contexte d'un hebergement mutualisé, et donc que chaque user utilise le même jelix et ont leur propre environnement, ca permet d'éclaircir un peu les choses.

Et si tu commençait par expliquer ce que tu veux faire exactement avec Jelix ?

 
Page
  1. Personnalisation et manipulation du répertoire temp