Tâche #36096
Scénario #36079: Zephir : écrasement possible possible des fichiers de la variante
Étude
100%
Historique
#1 Mis à jour par Benjamin Bohard il y a plus d'un an
- Assigné à mis à Benjamin Bohard
#2 Mis à jour par Benjamin Bohard il y a plus d'un an
- Statut changé de Nouveau à En cours
#3 Mis à jour par Benjamin Bohard il y a plus d'un an
Les fichiers ajoutés dans le formulaire sont stockés directement dans /var/lib/zephir/modules/<id module>/variantes/<id variante>/fichiers_zephir.
Le nom est déterminant et doit être unique dans cette implémentation.
On peut ajouter que si on supprime l’un des fichiers dans le formulaire des fichiers personnalisés, le fichier est supprimé du système de fichier cassant ainsi le lien avec les autres entrées de fichier personnalisé qui partageaient le même nom.
#4 Mis à jour par Benjamin Bohard il y a plus d'un an
Il y a actuellement un incohérence entre le test qui détermine si on ajoute le nouveau fichier à la liste et l’écriture du fichier sur le système de fichier.
Dans le premier cas, le test porte sur le chemin de destination complet.
Dans le second cas, seul le nom de fichier est utilisé.
Si on valide l’impossibilité d’ajouter deux fichiers du même nom comme c’est le cas actuellement, le plus simple est de rendre le test d’ajout cohérent en se basant sur le nom de fichier uniquement. Une erreur classique du backend serait déclenchée en cas de fichier déjà listé avec le même nom. Ce changement minimal a comme principal avantage de ne pas impacter le mécanisme de transfert de fichiers.
#5 Mis à jour par Benjamin Bohard il y a plus d'un an
Un cas non permis qui était peut-être légitime : la distribution du même fichier (même nom, même contenu) à différents emplacements (hors différents conteneurs puisque le fichier, dans ce cas, est suffixé du nom du conteneur).
Si on veut permettre ce cas d’usage, la solution proposée d’interdire les noms de fichier identiques n’est pas convenable.
#6 Mis à jour par Benjamin Bohard il y a plus d'un an
Le cas de la distribution d’un même fichier (même nom, même contenu) n’a jamais été possible. La solution d’interdire un doublon ne constitue finalement pas une régression.
Dans le cas d’un doublon, seul le dernier chemin listé dans le fichier fichiers_variante (le dernier ajouté) est pris en compte.
#7 Mis à jour par Benjamin Bohard il y a plus d'un an
- Statut changé de En cours à À valider
#8 Mis à jour par Laurent Gourvenec il y a plus d'un an
- Statut changé de À valider à Résolu
#9 Mis à jour par Joël Cuissinat il y a plus d'un an
- Statut changé de Résolu à Fermé
- % réalisé changé de 0 à 100
- Restant à faire (heures) mis à 0.0