Al desarrollar una aplicación reutilizable de Django, ¿cómo implementarla en Heroku?

Intento desarrollar una aplicación reutilizable de Django y un proyecto que la use. Están en dos repositorys git separados. El objective es facilitar el cambio del código tanto del proyecto como de la aplicación, y desplegar ese código en Heroku.

En este momento, he configurado los requirements.txt del proyecto para include la línea

 https://github.com/me/my-reusable-app/tarball/master 

Entonces, teóricamente, puedo trabajar en mi aplicación reutilizable, insert los cambios en github y luego implementar desde el directory del proyecto. Sin embargo, Heroku no parece darse count cuando hice cambios en my-reusable-app . Incluso cuando cambio el proyecto, git push heroku master los cambios, y luego ejecuto git push heroku master , forzando una reconstrucción, no parece captar las actualizaciones de GitHub.

¿Hay una mejor manera de hacer esto? Por ejemplo, ¿sería mejor convertir la aplicación en un git submodule de git submodule del proyecto, en lugar de tener una dependencia en requirements.txt ? O también podría implementar sin git, usando esta herramienta . Finalmente, podía dejar de utilizar la aplicación para ser reutilizable, y simplemente mover los dos repositorys de git juntos.

Yo recomendaría un submodule de Git.

Estoy utilizando con éxito este enfoque para include el código fuente de Twitter Bootstrap en una aplicación Django en Heroku, y dado que los submodules son ampliamente entendidos (si no todos me gustaron) otros desarrolladores deberían tener problemas mínimos para ponerse al día.

Pero, por supuesto, hay otras opciones. Este artículo de Heroku sugiere cuatro, incluido el que recomiendo:

  • Submodules de Git,
  • submodules Git "protegidos" que requieren cnetworkingenciales para clonar,
  • usando un vendor/ directory, y
  • repositorys de packages privados