Thatoo
Octobre 6, 2024, 12:00
42
Pourrais-tu détailler ton idée?
Jâai essayĂ© sur une autre machine et jâai le mĂȘme rendu donc le problĂšme ne venait pas de arm/raspi4.
Tant que ce soucis nâest pas rĂ©solu, impossible dâimaginer publier le paquet yunohost. Mais câest aujourdâhui le seul frein Ă ma connaissance donc si on arrive Ă rĂ©soudre ça, le paquet ynh pourra ĂȘtre publiĂ©.
Bonjour @Thatoo ,
Je viens de re-regarder ta capture dâĂ©cran du PDF et une partie de lâimage mâintrigue :
Ce sont les boutons de prĂ©visualisation dâimpression qui sont bien prĂ©sents dans toutes les impressions PDF, mais qui sont censĂ©s ĂȘtre masquĂ©s par la rĂšgle CSS suivante :
@media print {
.print-hide {
display: none !important;
}
}
Cette rĂšgle se trouve dans le fichier print.bundle.scss
qui est compilé dans un fichier :
dokos-bench/apps/frappe/frappe/public/dist/css/print.bundle.########.css
Donc ça veut dire que le serveur/reverse proxy nâarrive pas Ă servir le fichier, ou alors que la rĂšgle ne sâapplique pas. Or, bench build
produit des liens symboliques, en lâoccurence le lien suivant :
dokos-bench/sites/assets/frappe/dist/css/print.bundle.########.css
Sâagissant dâun lien symbolique, il faut sâassurer que lâutilisateur exĂ©cutant le reverse proxy (e.g. www-data) ait bien accĂšs en eXploration Ă tous les dossiers situĂ©s sur le chemin complet vers le lien symbolique (incluant tous les dossiers parents, par exemple le home de lâutilisateur).
Si tu veux vĂ©rifier lâimpression sans faire de PDF, tu peux consulter la page printview
dans ton navigateur. Dans lâinspecteur RĂ©seau, tu pourras voir tout de suite si certains fichiers ne sont pas chargeables par le navigateur car le reverse proxy ne peut pas y accĂ©der. Si la page sâaffiche correctement, alors il y a forcĂ©ment un problĂšme avec wkhtmltopdf mais ça me semble Ă©trange quâune rĂšgle simple comme celle susmentionnĂ©e ne fonctionne pas.
https://demo.dokos.cloud/printview?doctype=Quotation&name=SAL-QTN-2024-00001
VoilĂ un exemple du rendu attendu :
1 « J'aime »
Thatoo
Octobre 9, 2024, 9:20
44
Voici ce que jâai en allant sur « https://dokos.local/printview?doctype=Quotation&name=SAL-QTN-2024-00001 » :
le css est bien prĂ©sent, ça sâaffiche quand mĂȘme un peu bizarrement, et si je clique sur « Obtenir un PDF » :
le css nâest pas prĂ©sent et ça sâaffiche mal.
Quand aux droits sur les fichiers/dossiers, voici ce que jâai :
donc je pense que câest ok.
Thatoo
Octobre 9, 2024, 9:27
45
ah, jâai peut-ĂȘtre trouvĂ© quelque chose dâintĂ©ressant dans dokos-bench-folder//sites/dokos.local/log/wkhtmltopdf.log :
Quâest-ce que ce port 8000 vient faire lĂ au milieu?
Aaaaaah câest le host_name du site_config.json qui est peut-ĂȘtre mal configurĂ© !!
Thatoo
Octobre 9, 2024, 9:29
47
Ă©videment le lien avec le port 8000 ne donne rien mais si jâenlĂšve le port 8000, je trouve bien le contenu du fichier print.bundle.xxxx.css
Oui il faut définir la clé host_name
du fichier site_config.json Ă une valeur telle que https://monsite.example.com
en production, sinon https://localhost:<port>
en local/dev.
Pour que le site soit en mesure de bien fonctionner, il faut effectivement lui indiquer son URL. Typiquement, en production, le nom du site est suffisant parce quâil y a un enregistrement DNS adĂ©quat.
Mais en dĂ©veloppement, le site va essayer dâaccĂ©der Ă dokos.local
en vain tant que rien nâest ajoutĂ© au fichier /etc/hosts, ou alors quâun host_name
est défini.
Jâen parlais un peu ici :
Thatoo
Octobre 9, 2024, 9:45
52
Jâai changĂ© pour :
Quand jâai voulu « Obtenir un PDF », ça a plantĂ© donc je relance la VM.
Thatoo
Octobre 9, 2024, 9:51
53
erreur 504 :
mais par contre les logs de wkhtmltopdf nâont plus dâerreurâŠ
Thatoo
Octobre 9, 2024, 10:01
54
puisque tu me rappelles ce prĂ©cĂ©dent message, je peux tâaffirmer que Dokos fonctionne bien sous arm64, il tourne sur un raspi 4. Par contre, jâavais Ă©videmment le mĂȘme problĂšme de PDF, Ă un moment je me suis demandĂ© si le pbm ne venait pas justement de lĂ mais depuis, jâai la mĂȘme chose en VM ou sur un ordi avec CPU amd64.
Okay superbe, je vais dâailleurs bientĂŽt sortir des images Docker ARM, jâai aussi fait quelques expĂ©rimentations qui me semblent concluantes.
Il y a le PORT en trop dans https://dokos.local:8000 je crois bien
Thatoo
Octobre 9, 2024, 10:05
58
je nâai pas mis de port dans site_config.json :
"host_name": "https://dokos.local",
dâailleurs, il nây a plus dâerreur dans le log de wkhtmltopdf :
mais en revanche, dokos se met en carafe pendant 10 minutes et mâaffiche une erreur 504 puis ça revient.
Thatoo
Octobre 9, 2024, 10:19
59
En regardant le log de nginx, câest upstream qui ne rĂ©pond pas :
Thatoo
Octobre 9, 2024, 10:27
60
Câest drĂŽlement sensible car si je mets
"host_name": "https://dokos.local/",
avec le / Ă la fin, jâai de nouveau une erreur dans les logs de wkhtmltopdf :
Je renlĂšve le /
Thatoo
Octobre 9, 2024, 10:31
61
erreur 504 avec dans les logs de nginx
mais sans erreur dans les logs de wkhtmltopdf.
Bon je crois que je tourne en rond, je vais me coucher.
Thatoo
Octobre 10, 2024, 8:56
62
Et bien nous nâĂ©tions pas si loin de, je crois, la solution :
"host_name": "https://dokos.local:443",
ça correspond à ce à quoi ça devrait ressembler?
3 « J'aime »