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> [--locations <comma separated list of migration locations>]
or
export PGMIGRATIONS_DSN=<dsn>
export PGMIGRATIONS_LOCATIONS=<comma 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> [--locations <comma separated list of migration locations>]
or
export PGMIGRATIONS_DSN=<dsn>
export PGMIGRATIONS_LOCATIONS=<comma 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.11-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b40baf6dd775b4828b53cb38e57621f81b37da621c4a64ca54c6662b21296107 |
|
MD5 | 069b70dd0129b0badb101a943e6d6384 |
|
BLAKE2b-256 | 504361655e469c39087d51647675d2780624047a10e52129735e068a30c8991a |