This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

Automate the destruction and re-creation of django databases

Project Description

Compatible with Django 1.8+

For 1.7 compatibility use django-zap==0.0.6

What?

Automates the destruction and recreation of django databases.

Currently only supports local postgres databases. Feel free to add more backends.

Why?

In the early stages of development when your models are heavily in flux, you want to be frequently dropping and recreating the database before re-running django’s syncdb command. This tool uses the database settings in your settings file to prevent you having to duplicate them in some separate database drop/create script.

How?

Just add zap to your installed apps.

A new django management command will appear: zap_and_create_db.

Help is at python manage.py zap_and_create_db --help but the TL;DR is that you can run it without arguments and it’ll drop the user and database, then recreate them. Run it with --migrate and it’ll also run manage.py migrate.

Backends

At the moment the only backend is for linux machines running a local postgresql instance, and authentication is done using the ident rule in the pg_hba.conf, then calling psql as the postgres user.

Feel free to provide more backends or extend the one we have, perhaps to include mac support, or support for other django database engines.

Changelog

0.0.7 (2016-10-07)

Now only compatible with django 1.8+

  • Replaces option_list with add_arguments

0.0.6 (2015-10-29)

  • Adds --droptest argument, which also drops the test database. This feature is aimed at people using –keepdb to speed up their test runs.

0.0.5 (2015-09-16)

  • database argument now passed to backend in support of multiple database setups.

0.0.4 (2015-04-01)

  • #3 Adds a new flag --dropconnections, disabled by default, that tells postgres to terminate all existing sessions before zapping. This is to work around an issue where third party applications open database connections upon app registry installation.

0.0.3 (2015-02-12)

  • Adds OSX detection
  • Adds port option for postgres backend
  • Changes working directory of postgres subprocess command to /tmp

0.0.2 (2014-11-25)

  • Update how args are parsed to allow use from call_command

0.0.1 (2013-09-27)

  • All important fix-the-bladdy-packaging release

0.0.0 (2013-09-27)

  • Initial Release
Release History

Release History

This version
History Node

0.0.7

History Node

0.0.6

History Node

0.0.5

History Node

0.0.4

History Node

0.0.3

History Node

0.0.2

History Node

0.0.1

History Node

0.0.0

Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
django-zap-0.0.7.zip (10.8 kB) Copy SHA256 Checksum SHA256 Source Oct 7, 2016

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting