The Python package distribution ecosystem has improved a lot in recent years. Different methodologies and tooling have emerged to help deal with defining and installing the dependencies of a Python project, be it a library, a framework or a final product.
The tools, techniques and approaches available scale up with varying levels of efficiency and success. In the Aldryn infrastructure, we deal with huge numbers of deployments, that need to be fast and repeatable. I'll discuss how we dealt with dependency management challenges, the lessons learnt and tools developed.
These lessons are valuable and applicable even if you only need to deal with a few - rather than a few thousand - Python deployments. Getting dependency management right will help ensure your projects work now and in the future, across multiple installs or deployments.
DevOps Engineer at Divio, handling all infrastructure-related matters for the Aldryn platform and further development of apps deployment pipeline.