Metadata-Version: 1.0
Name: django-sitepush
Version: 0.1dev1
Summary: Redeploy Django projects using management commands
Home-page: http://github.com/yprez/django-sitepush
Author: Yuri Prezument
Author-email: y@yprez.com
License: ISC
Description: ===============
        django-sitepush
        ===============
        
        Redeploy Django projects using management commands
        
        **Warning:** This package is still in alpha, and not really ready for use.
        
        
        
        What does it do?
        ================
        
        Using Fabric to run a management command on each remote instance to redeploy
        itself.
        
        The remote command will pull the source code from Git, run all necessary Django
        management commands, and restart the server.
        
        
        Why?
        ----
        
        Because it's faster.
        
        When the you run everything remotely it only takes about 10 seconds to deploy
        an instance.
        
        
        What commands will run?
        -----------------------
        
        - ``git pull``
        - ``pip install -r requirements.txt``
        - ``syncdb``
        - ``migrate``
        - ``collectstatic``
        - ``restart server (webserver dependent)``
        
        
        
        Requirements
        ============
        
        - A deployed instance running either:
            - Apache with mod_WSGI
            - GUnicorn
        - Fabric
        - A Git hosted repository for the project
        
        
        
        Installation
        ============
        
        Add the app to your ``INSTALLED_APPS`` setting::
        
            INSTALLED_APPS = (
                #...
                'sitepush',
            )
        
        
        Settings
        ========
        
        Add the server configuration to your settings file::
        
            DEPLOYS = {
                'default': {
                    'HOST': '192.168.0.1',         # IP or domain name
                    'USER': 'user',                # User to login with
                    'BRANCH': 'master',            # Git branch to pull updates from
                    'SETTINGS': 'settings',        # Settings file to use (optional)
                    'DIR': '/var/www/myproject/',
                    'ENV': 'myvirtualenv',         # virtualenv used in the project
                    'WEBSERVER': 'gunicorn',       # webserver - 'apache' or 'gunicorn'
        
                    'PID_FILE': '/tmp/gunicorn.pid',  # Gunicorn pid file path
                    'WSGI_FILE': 'deploy/wsgi.py',    # Apache wsgi file path
                },
            }
        
        The ``PID_FILE`` / ``WSGI_FILE`` settings should be set depending on the web
        server you're using.
        
        ``BRANCH`` is optional and defaults to ``master``
        
        
        Usage
        =====
        
        ::
        
            python manage.py deploy_remote default
        
            # Or
            python manage.py deploy_remote srv1 srv2 #...'
        
            # Don't install requirements:
            python manage.py deploy_remote default --noreqs
        
            # Deploy all remote instances:
            python manage.py deploy_remote --all
        
Platform: UNKNOWN
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Framework :: Django
Classifier: Intended Audience :: Developers
Classifier: Natural Language :: English
Classifier: License :: OSI Approved :: ISC License (ISCL)
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
