SQL migrations for projects using PostgreSQL
Project description
pgmigrations
SQL migrations for projects using PostgreSQL
Example Usage
Initialise the migrations
pgmigrations init --dsn <dsn>
or
export PGMIGRATIONS_DSN=<dsn>
pgmigrations init
This will create a directory called migrations
in the current working directory
Create a migration
pgmigrations create --dsn <dsn> <tag>
or
export PGMIGRATIONS_DSN=<dsn>
pgmigrations create <tag>
This will create a skeleton migration in the migrations
directory. The migration will consist of a directory with
the name <timestamp>_migrations_<tag>
, for example 20200701_1030_migrations_first_migration
, which
contains two files; apply.sql
and rollback.sql
.
As the names suggests, apply.sql
will be executed when the migration is applied and rollback.sql
will be
executed if the migraiton is rollbacked.
Apply migrations
pgmigrations apply --dsn=<dsn> [--path <colon separated list of migration locations>]
or
export PGMIGRATIONS_DSN=<dsn>
export PGMIGRATIONS_PATH=<colon separated list of migration locations>
pgmigrations apply
This will apply any unapplied migrations. Each migration is applied in an atomic transaction.
Rollback a migration
pgmigrations rollback --dsn=<dsn> [--path <colon separated list of migration locations>]
or
export PGMIGRATIONS_DSN=<dsn>
export PGMIGRATIONS_PATH=<colon separated list of migration locations>
pgmigrations rollback <name>
This will rollback an already applied migration.
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
Built Distribution
Hashes for pgmigrations-0.0.12-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 58668435f37847b3d5d6a2aa2be2bcf13ddabb426f97ff9244d4cb91f66b2339 |
|
MD5 | 95605dafc960ec06c7e5a6d04bd07674 |
|
BLAKE2b-256 | 2c2deb524913ddfd25aac536560b21dbec25bbec9a495f6f51f3f9151f47596b |