Zenika-Training / zenika-formation-framework

Tools to build and present our training material
8 stars 25 forks source link

Génération PDF impossible sur MAC OSX #139

Closed CapsHil closed 7 years ago

CapsHil commented 7 years ago

Via Docker, c'est visiblement le path qui est mal généré. Une fois mis en dur dans run.sh, ça tourne, il dit que c'est ok, mais rien n'est généré

La génération directement avec Grunt ne fonctionne visiblement pas non plus.

screen shot 2016-12-15 at 14 59 18
hgwood commented 7 years ago

Utilises-tu Docker for Mac ou une VM ?

CapsHil commented 7 years ago

J'utilise Docker for Mac

hgwood commented 7 years ago

Est-ce que tu peux me donner :

CapsHil commented 7 years ago

Chemin absolu : /Users/Zenika/Workspace/formations/formation-microservices-developpeurs/ Conf File Sharing :

screen shot 2016-12-16 at 15 29 59
hgwood commented 7 years ago

Tu peux essayer de créer le dossier PDF à l'intérieur de formation-microservices-developpeurs puis relancer la commande ?

CapsHil commented 7 years ago

Déjà essayé, même résultat

hgwood commented 7 years ago

J'appelle les contributeurs de run.sh à la rescousse : @l0rd @looztra @RelikDream @gmembre-zenika @zigarn @yyekhlef @vdemeester @srevereault @coliss86

gmembre-zenika commented 7 years ago

le pb provient du double / que l'on ajoute lors du mapping de volume avec docker : voici ce que l'on a aujourd'hui :

docker run -it --rm -v //Users/guillaume/projets/Formation-microservices-developpeurs/Gruntfile.js:/data/Gruntfile.js -v [...] zenika/formation-framework:0.4.6 grunt pdf

alors que l'on devrait écrire :

docker run -it --rm -v /Users/guillaume/projets/Formation-microservices-developpeurs/Gruntfile.js:/data/Gruntfile.js -v [...] zenika/formation-framework:0.4.6 grunt pdf

(Suppression du / en trop devant "Users")

Une correction possible du run.sh serait :

export VOLUME_SLIDES="$PWD/Slides/:/data/Slides/"

à la place de

export VOLUME_SLIDES="/$PWD/Slides/:/data/Slides/"

mais je ne sais pas si cela marchera sous windows, qq1 pour confirmer ?

hgwood commented 7 years ago

Perso sous Windows je met la variable d'environnement MSYS_NO_PATHCONV à 1 pour que Git Bash se fasse pas de traduction des chemins avant de les passer à Docker. Ca marche parce que Docker tourne dans une VM Linux qui utilise les mêmes chemins qui la machine Windows mais en mode Linux (/c/Users/...) et les dit chemins sont montés par VirtualBox dans la VM. Tout cela est pas défaut avec Docker Machine sous Windows, donc je pense que c'est une bonne solution pour ce cas là. Maintenant le problème c'est : et pour Docker for Windows ?

Après je pense qu'on a plus de gens sous Docker Machine et Docker for Mac et que Docker for Windows donc on peut peut-être se permettre de faire cette modification.

hgwood commented 7 years ago

OK je viens de voir qu'en plus Docker for Windows n'est disponible que sur Windows 10 Pro, que personne n'a.

hgwood commented 7 years ago

@CapsHil tu pourrais tester la solution de @gmembre-zenika ?

CapsHil commented 7 years ago

Je confirme, la méthode de @gmembre-zenika fonctionne sur Mac, il suffit bien de supprimer tout les / au début des PATH qui commencent par $PWD

CapsHil commented 7 years ago

Du coup un simple if sur un uname -s peut régler le problème

hgwood commented 7 years ago

@CapsHil Tu ferais une petite PR sur https://github.com/Zenika/Formation--Modele ?

hgwood commented 7 years ago

Devrait être corrigé avec https://github.com/Zenika/Formation--Modele/pull/121