freeze-requirementsA script to help creating and maintaining frozen requirements for pipfreeze-requirements
===================
A script to help creating and maintaining frozen requirements for pip.
It is inspired by this `Mozilla dev team blog post <http://blog.mozilla.org/webdev/2013/01/11/switching-to-pip-for-python-deployments/>`_,
who recently switched to pip for deployment.
Basically it downloads packages from one or more pip 'normal' requirements
files (the ones you use for development, containing only the 'top level'
dependencies), and outputs the corresponding list of requirements to copy/paste
in your frozen production requirements files.
It can also upload the packages to your private pypi repository, and even
download the packages from there to save bandwidth.
Installation
------------
Install from pypi::
$ sudo pip install freeze-requirements
Or from source::
$ sudo ./setup.py install
If you want to use ``--upload`` you also need fabric::
$ sudo pip install fabric
Examples
--------
Download packages locally::
freeze-requirements requirements.txt --output /tmp/packages
Process multiple requirements files at once::
freeze-requirements requirements.txt requirements2.txt --output /tmp/packages
Download packages and upload them to a remote host::
freeze-requirements requirements.txt --upload user@private-pypi.example.com:/home/pypi/packages
Same as above but download packages from the remote host. This may be faster as
there is no need to upload the packages from your machine and the remote host
may have a faster internet connection (pip needs to be installed on the remote
host)::
freeze-requirements requirements.txt --upload user@private-pypi.example.com:/home/pypi/packages --remote-pip
.. This is your project NEWS file which will contain the release notes.
.. Example: http://www.python.org/download/releases/2.6/NEWS.txt
.. The content of this file, along with README.rst, will appear in your
.. project's PyPI page.
News
====
0.2a1
-----
*Release date: UNRELEASED*
* Example news entry for the in-development version
0.1
---
*Release date: 15-Mar-2010*
* Example news entry for a released versionLuper Rouch32ee57c2ecc5aab0273dec0eb36d369d973000920.1