Skip to main content

UA2WEB Django patch system

Project description

What this package does?
=======================

This package provides an easy half-manual and controlled way to define and run SQL, Python and Shell script for your project.

Supported backends
==================

- MySQL
- PostgreSQL

Supported Django versions
=========================

- Django >= 1.8

Supported OS
============

- Linux
- Ubuntu 14.04
- Ubuntu 16.04

Why to use this package if there is django-migrations and South?
================================================================

The differencies between Django migrations and ua2.patch are in purpose:

- django-migrations primary purpose is to propogate changes you make to your models into your database
- ua2.patch purpose is to create & maintain patches, written by big development team

This package could be used in parallel to existing django-migrations module, or it can completely replace the job done by migrations. You, as developer, decide where you should use one or another.

We are not going to replicate all migration features, the core idea of this package is to provide easy to use tool to create and maintain (SQL|Python|Shell) patches for big team of people, working in parallel on different branches.

What are benefits of using ua2.patch ?
======================================

Simple way to automate running custom patches
---------------------------------------------

It is very easy to create patches for your data.

Installation
============

Install package from pip
------------------------

First, install package via pip:

``` example
pip install ua2.patch
```

And then, add it to your Django INSTALLED<sub>APPS</sub>:

``` example
INSTALLED_APPS = [
...
'ua2.patch',
]
```

Usage examples
==============

Create SQL patch
----------------

``` example
./manage.py patch next
File .../patches/00002-johnsmith-014.sql has been created
size: 0
```

Now, you can open & edit the file. *Note*: until file size is zero, it would not be applied, but will be treated as *reserved* patch for future use.

Create Python patch
-------------------

``` example
./manage.py patch next -e py
File .../patches/00002-johnsmith-022.py has been created
size: 0
```

*Note:* patch body should have function main() which returns True. If you don't return True, the system will run the patch and exit on this place, preventing other scripts to run.

Create Shell patch
------------------

``` example
./manage.py patch next -e sh
File .../patches/00003-johnsmith-022.sh has been created
size: 0
```

Project details


Download files

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

Source Distribution

ua2.patch-2.0.0.tar.gz (8.4 kB view details)

Uploaded Source

Built Distribution

ua2.patch-2.0.0-py2.py3-none-any.whl (12.1 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file ua2.patch-2.0.0.tar.gz.

File metadata

  • Download URL: ua2.patch-2.0.0.tar.gz
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for ua2.patch-2.0.0.tar.gz
Algorithm Hash digest
SHA256 3b9a5003a822d63636280f6d31ebd659b0b89733bce9b6da4145c2bbdad7318f
MD5 6c374ffbba0399307c83286af6e7b369
BLAKE2b-256 3d0bb470208a31416ae3e2abfb65c9fffccfa8140f3b493c762af63205b3d6d2

See more details on using hashes here.

File details

Details for the file ua2.patch-2.0.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for ua2.patch-2.0.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 2c42556dba32ef176eaf247ad034c015dc99c9a5971b0e4e9312fd8d7edc3f68
MD5 19ddb8e88ef3f2e869a24ed32e6ffa4e
BLAKE2b-256 e71d63a5c27b6d4e7d6de5b0cdba0d76a292c5aa798d83fd09c2ec097c73adca

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page