Problèmes avec le répertoire public lors du déploiement de l’application Node.js avec Heroku

Je travaille sur une application qui comportera un élément Timelinejs (bibliothèque open source js) côté client. J’ai copié la bibliothèque Timelinejs dans mon répertoire public / javascripts / de mon application. Ensuite, je l’ai lié dans mon en-tête HTML. Lorsque je sers mon application localement, tout fonctionne correctement avec la timeline. Cependant, j’ai remarqué que lorsque j’ai déployé mon application sur Heroku, elle ne chargeait pas mon calendrier. En utilisant la console chrome js, j’ai découvert que mes fichiers ne se trouvaient pas dans le dossier public / Javascripts / Timelinejs. En utilisant la commande Heroku run bash, j’ai découvert qu’aucun de mes fichiers Timelinejs n’était présent dans la structure de fichiers, même si un répertoire Timelinejs vide était présent. Dois-je spécifier une commande ou une configuration pour que ces fichiers soient intégrés à mon déploiement Heroku?

Heroku a un système de fichiers en lecture seule. Le répertoire où vous pouvez écrire est ./tmp ou ./log. Vous ne pouvez pas écrire dans le dossier public. C’est à cause de la façon dont ils gèrent leurs dynos et de la façon de les redimensionner. Si vous voulez stocker quelque chose, utilisez le ./tmp ou, recommandé, un compartiment s3. (comme je le suppose, “tmp” signifie “temporaire”: D)

Plus d’informations ici: https://devcenter.heroku.com/articles/read-only-filesystem