You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
piq9117 50966783c4 hasql-migration override removed (#30) 1 month ago
app firsties 3 months ago
nix update pinned nix rev (#26) 1 month ago
src naming convention (#28) 1 month ago
test naming convention (#28) 1 month ago
.gitignore logging (#1) 3 months ago
.stylish-haskell.yaml firsties 3 months ago
CHANGELOG.md firsties 3 months ago
LICENSE license and readme 3 months ago
Makefile firsties 3 months ago
README.md readme (#20) 2 months ago
Setup.hs firsties 3 months ago
default.nix didn't need set (#15) 2 months ago
migratum.cabal migratumInfo (#23) 1 month ago
release.nix hasql-migration override removed (#30) 1 month ago
shell.nix update pinned nix rev (#26) 1 month ago

README.md

migratum

Generic badge

Migratum is a PostgreSQL migration utility.

Migratum: PostgreSQL Migration Tool

Usage: migratum COMMAND
  Migratum is a database tool that manages migrations

Available options:
  -h,--help                Show this help text

Available commands:
  new                      Generate necessary files for migration
  init                     Initialize database for migration
  migrate                  Perform Migration

Initial Setup

Database Connection

$ migratum new

This comment will generate the migrations directory which will contain

migrations
|-migratum.yaml
|-sql

migratum.yaml will contain the field below, which you can fill in with your database information.

config:
  postgres_password:
  postgres_db:
  postgres_user:
  postgres_host:
  postgres_port:

Once these fields have been filled in, perform this command

$ migratum init

This will create a table called schema_migrations. This table will store the information about the migrations that have been executed in the database

Migration

Write your migration file in the sql directory with this convention.

V<version number>__<name of migration>.sql

For example:

V1__uuid_extension.sql

After you are done writing your migration script, perform this command

$ migratum migrate

You should see this response in your terminal

[Info]: MigrationPerformed V1__uuid_extension.sql