Yet another way to manage migrations: DBA as a service
Project description
Yet another way to manage migrations: DBA as a service.
Let your favorite DBAs define the database schema, and provide blue/green migration files. Drop django native migrations, and use DBA’s migrations everywhere.
Requirements
Postgresql only (>= 9.4)
Django, obviously. v1.8, v1.9, v1.10, v1.11
Running under Python 2.7 or 3.4+
Documentation
The full documentation is at https://django-north.readthedocs.org.
Quickstart
Install Django North:
pip install django-north
In your settings.py :
INSTALLED_APPS = [
# ...
"django_north",
]
NORTH_MANAGE_DB = True
NORTH_MIGRATIONS_ROOT = '/path/to/sql/migrations/'
NORTH_TARGET_VERSION = '1.42'
Running Tests
You will need a usable Postgresql database in order to test the project. For example:
source <YOURVIRTUALENV>/bin/activate export DATABASE_URL=postgres://USER:PASSWORD@HOST:PORT/NAME (myenv) $ pip install -r requirements_test.txt
Run tests for a specific version
(myenv) $ ./runtest
Run tests for all versions (if tox is installed globally, you don’t need a virtual environment)
$ tox
Using the project
Many operations are documented in the Makefile. For more information, use:
$ make help
Credits
Tools used in rendering this package:
History
0.2.2 (2018-02-01)
Flush command: do not flush migration tables.
0.2.1 (2018-01-29)
Add VACUUM to NORTH_NON_TRANSACTIONAL_KEYWORDS default settings.
Add a setting NORTH_SCHEMA_VERSION to force the schema to be used to init a DB.
0.2.0 (2017-10-16)
Backport the sqlall command.
Sanitize sql statements for SimpleBlock.
0.1.8 (2017-09-20)
Detect manual files if not stored in the ‘manual’ dir.
Fix unicode error with SimpleBlock
0.1.7 (2017-09-06)
Fix get_applied_versions result ordering.
0.1.6 (2017-09-05)
Add tests for Django 1.11.
0.1.5 (2017-05-24)
Fix showfixtures command for Django 1.10.
0.1.4 (2017-05-10)
Do not fail if fixtures do not exist. Use the closest fixtures for DB init and flush command.
Add support of python3.
0.1.3 (2017-04-18)
Use a Block if the sql file contains a ‘ALTER TYPE’ instruction Add a setting to customize the files to run in a Block.
0.1.2 (2017-04-13)
Use a Block if the sql file contains a CONCURRENTLY instruction.
0.1.1 (2017-04-11)
Add the possibility to configure the current version detector.
0.1.0 (2017-03-28)
First release on PyPI.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file django-north-0.2.2.tar.gz
.
File metadata
- Download URL: django-north-0.2.2.tar.gz
- Upload date:
- Size: 17.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ceae6f8532f0b9b801d82a3aeae2b40d016e2487a512ad0c89f1d66e788df754 |
|
MD5 | dcfd187635290ecb70a1545ac0ccf42e |
|
BLAKE2b-256 | 4cff2d4a4f616e8f5fa38afff29c9ac795513eb020b0bd3898bf40a69c060068 |