[RESOLU] Modification de la date des fichiers copiés

Questions about WAPT Packaging / Requêtes et aides autour des paquets Wapt.
Règles du forum
Règles du forum communautaire
* English support on www.reddit.com/r/wapt
* Le support communautaire en français se fait sur ce forum
* Merci de préfixer le titre du topic par [RESOLU] s'il est résolu.
* Merci de ne pas modifier un topic qui est taggé [RESOLU]. Ouvrez un nouveau topic en référençant l'ancien
* Préciser version de WAPT installée ( 1.8.2 / 2.0 / 2.1 / 2.2 / etc.) AINSI QUE l'édition Enterprise / Discovery
* Préciser OS du serveur (Linux / Windows) et version (Debian Stretch/Buster - CentOS 7 - Windows Server 2012/2016/2019)
* Préciser OS de la machine d'administration/création des paquets (Windows 7 / 10)
* Comme tout forum communautaire, le support est fait bénévolement par les membres. Si vous avez besoin d'un support commercial, vous pouvez contacter le service commercial Tranquil IT au 02.40.97.57.55
erousseau
Messages : 3
Inscription : 28 janv. 2022 - 13:33

28 janv. 2022 - 16:38

Bonjour,

Je souhaite faire un package pour l'installation d'un logiciel "portable" (développement interne).

Or quand on installe des fichiers (avec copytree2), la date de modification de ces fichiers est changée avec la date d'installation.

Je trouve cela gênant (surtout pour les exe, dll, ..). Existe-il un moyen de l'éviter ?

Merci

Etienne

- Version de WAPT installée: 2.1.2
- OS du serveur : Linux
- OS de la machine d'administration/création des paquets : Windows 10
Dernière modification par erousseau le 04 févr. 2022 - 11:12, modifié 1 fois.
Avatar de l’utilisateur
dcardon
Expert WAPT
Messages : 778
Inscription : 18 juin 2014 - 09:58
Localisation : Nantes
Contact :

01 févr. 2022 - 15:32

Bonjour Etienne,

en effet la librairie Zip de Python ne restaure pas les timestamp, c'est un bug/limitation/feature de Python...
Ceci dit les données sont bien présentes dans l'archives, et il y a l'API disponible pour récupérer le timestamp dans le fichier zip. Donc on devrait pouvoir faire quelque chose, mais il faut que ce soit au moment du dezip. Mais ça sous-entend de faire deux fois les accès aux fichiers dézippé, il faut voir l'impact.
Pour l'instant vous pouvez corriger le timestamp avec la fonction python os.utime(..) en notant les timestamps que vous avez besoin de restaurer.
Je vais faire un ticket en interne avant le zippage.

Cordialement,

Denis Cardon
Denis Cardon - Tranquil IT
Communiquez autour de vous sur WAPT! Envoyez nous vos url de blog et d'articles dans la catégorie votre avis du forum, nous les mettrons en avant sur le site WAPT
erousseau
Messages : 3
Inscription : 28 janv. 2022 - 13:33

02 févr. 2022 - 12:44

Bonjour Denis,

Merci de votre réponse.

Il me semble que, dans la majorité des cas, lorsque l'on dézippe un fichier on s'attend à retrouver la date de modification inchangée. Le fonctionnement de la librairie Zip de Python me paraît étrange...

S'il était possible de faire quelque chose dans WAPT ce serait formidable !

En attendant, existe-il un moyen de lire l'archive de WAPT au moment de l'installation (depuis la procédure "install") pour récupérer les dates des fichiers ?

Etienne
Avatar de l’utilisateur
dcardon
Expert WAPT
Messages : 778
Inscription : 18 juin 2014 - 09:58
Localisation : Nantes
Contact :

03 févr. 2022 - 10:37

Bonjour Etienne,
erousseau a écrit : 02 févr. 2022 - 12:44 Il me semble que, dans la majorité des cas, lorsque l'on dézippe un fichier on s'attend à retrouver la date de modification inchangée. Le fonctionnement de la librairie Zip de Python me paraît étrange...
oui, j'avoue que moi aussi j'ai trouvé cela assez curieux.
erousseau a écrit : 02 févr. 2022 - 12:44 S'il était possible de faire quelque chose dans WAPT ce serait formidable !
Le ticket est fait, mais ça ne sera probablement pas dans la prochaine version 2.2 qui devrait sortir très prochainement. Il faudra attendre la 2.3.
erousseau a écrit : 02 févr. 2022 - 12:44 En attendant, existe-il un moyen de lire l'archive de WAPT au moment de l'installation (depuis la procédure "install") pour récupérer les dates des fichiers ?
Si ma mémoire est bonne le paquet est supprimé du cache wapt uniquement quand il est correctement installé. Vous devriez donc pouvoir le trouver dans $WAPT_HOME\cache (à vérifier).

Denis
Denis Cardon - Tranquil IT
Communiquez autour de vous sur WAPT! Envoyez nous vos url de blog et d'articles dans la catégorie votre avis du forum, nous les mettrons en avant sur le site WAPT
erousseau
Messages : 3
Inscription : 28 janv. 2022 - 13:33

04 févr. 2022 - 11:11

Bonjour Denis,

Merci pour vos réponses.

En attendant la version 2.3 (qui simplifierai bien les choses) je vais essayer de récupérer les dates dans l'archive, sinon je ferais (en plus du package WAPT) un installeur pour mon application.

Etienne
Répondre