Serverless Migrate Plugin

Allows to create and run migrations using the serverless context

user  

EliuX

Serverless plugin for migrate

serverless npm version

This is a plugin for the Serverless framework that allows you to manage and run database-agnostic migrations. To do so, it works on top of migrate.

Features

With this plugin you can

  • Make the commands of migrate available via the serverless CLI.
  • Be aware of the environment variables configured in your serverless.yml.
  • Add the env variable SERVERLESS_ROOT_PATH which points to the root directory of your project.
  • Configure aspects of your migration using your serverless.yml: no need to specify them as options with the CLI.
  • Set values to env variables just for the migration context.
  • Specify an custom character indicator of the last run migration.

Basically, these migrations can do anything that involves applying I/O changes and undo them. Watch the CHANGELOG to see what has been added to the date.

Quick start

Check out the project located in the folder example of this repository. It contains a README with all the explanation you need to start creating your migrations. For starters, this is what you must do to start working with migrations:

  1. Install serverless-migrate-plugin in your project:
npm i serverless-migrate-plugin
  1. Add it to your serverless.yml to the plugins section:
plugins: 
  - serverless-migrate-plugin
  1. Create your first migration:
sls migrate create <your-migration-name>

Now you are ready to implement your migrations. Once you have finished, you can test them using sls migrate up and sls migrate down.

It is highly recommended you to read about how to create migrations for migrate.

Built With

  • Serverless framework: A powerful, unified experience to develop, deploy, test, secure, and monitor your Serverless applications.
  • Migrate: Abstract migration framework for node.
  • NodeJS: As runtime for Javascript 8+.

Author

License

This project is licensed under the MIT License - see the LICENSE.md file for details.

view on Github

Latest commit b2f54ec on Sep 24, 2017

New to serverless?

To get started, pop open your terminal & run:

npm install serverless -g