Serverless plugin for migrate
npm install serverless-migrate-plugin
Serverless plugin for migrate
==============================

This is a plugin for the [Serverless][serverless-web] framework that allows you to manage and run database-agnostic
migrations. To do so, it works on top of [migrate][migrate-npm].
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.
To get into details, check out the example project of this repository. It contains a README with an
explanation about all the valid commands and configuration variables you can use. For starters, this is what you must do
to start working right away with migrations:
1. Install serverless-migrate-plugin in your project:
``bash`
npm i serverless-migrate-plugin
1. Add it to your _serverless.yml_ to the plugins section:
`yaml`
plugins:
- serverless-migrate-plugin
1. Add a custom.migrate section to your _serverless.yml_ with the parameters you want to override:
`yaml`
custom:
migrate:
stateFile: .migrate2
store: ./sample-store
lastRunIndicator: <
noDescriptionText: '?'
ignoreMissing: true
dateFormat: "yyyy-MM-dd hh:mm:ssZ"
templateFile: "my-project-template.js"
environment:
ANOTHER_ENV: overrriden value
You can learn more about these variables in the example.
1. Create your first migration:
`bash`
sls migrate create -n
Now you are ready to implement your migrations. Once you have finished, you can run them using sls migrate upandsls migrate down. If you want to know more about any commands just run:
`bash``
sls migrate
It is also recommended that you understand how the migrate library works, like how
to create migrations.
* 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+.
* Eliecer Hernandez - eliecerhdz@gmail.com.
For more information, please visit my website.
This project is licensed under the MIT License - see the LICENSE.md file for details.
[migrate-npm]: https://www.npmjs.com/package/migrate
[serverless-web]: https://www.serverless.com