Database migration tool
0.6.0 Latest release released
16 11 13

Archived shard

This shard has been archived . It is no longer maintained or has been discontinued for other reasons.


A crystal library that can be used to create/drop/migrate/rollback your database


Add this to your application's shard.yml:

# Remember to also install the LuckyCli to run the tasks
    github: luckyframework/lucky_migrator

LuckyMigrator requires installing the LuckyCli so you can run the tasks. See instructions at the LuckyCli repo.

Setup tasks in

# file
require "lucky_cli"

# This will load all the db tasks
require "lucky_migrator"

# Require your migrations. Remember to create the directory too.
require "./db/migrations/*"

LuckyMigrator::Runner.db_name = "my_cool_db"

# This should always be at the bottom or your tasks won't be available in LuckyCli

Creating, dropping and migrating the database

This library consists of various tasks that can be run with LuckyCli

lucky db.create
lucky db.drop
lucky db.migrate
lucky db.rollback
lucky db.rollback_all

Generating a migration

lucky gen.migration CreateUsers

This will create a timestamped migration in db/migrations


  1. Fork it ( )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request


To run the tests:

  • Install Postgres: (macOS/Others)
  • Migrate the database using lucky db.create && lucky db.migrate
  • Run the tests with crystal spec


  github: luckyframework/lucky_migrator
  version: ~> 0.6.0
License MIT
Crystal 0.25.0


Dependencies 6

  • db
    {'github' => 'crystal-lang/crystal-db'}
  • habitat
    {'github' => 'luckyframework/habitat'}
  • lucky_cli
    {'github' => 'luckyframework/lucky_cli'}
  • lucky_inflector
    {'github' => 'luckyframework/lucky_inflector'}
  • lucky_record
    {'github' => 'luckyframework/lucky_record'}
  • pg
    {'github' => 'will/crystal-pg'}

Development Dependencies 0

Dependents 1

Last synced .
search fire star recently