Elasticsearch Migrate is brought to you by your friends at Last Call Media, this is a schema migration framework for Elasticsearch (7+).
To use it:
npm install @lastcall/elasticsearch-migrate
- Configure it.
To configure migrations, create a new entry in your project's package.json
with the key elasticsearch-migrate
. Example:
{
...
"elasticsearch-migrate": {
"root": ".",
"migrations": ["./dist/migrations/*.js"],
"elasticsearch": "http://localhost:9200",
"index": "migrations"
}
}
Each configuration option is optional, with a good default provided. Options are described below:
root
: The root directory to use when resolving the migrations pattern (defaults to the current working directory).migrations
: Glob patterns pointing to migration files, which must be in.js
format. Defaults to./migrations/*.js
.elasticsearch
: Configuration options for the Elasticsearch client. May be a string URI, a relative path pointing to a javascript file that exports a fully configured@elastic/elasticsearch
Client object, or an object specifying the Elasticsearch configuration.index
: The Elasticsearch index to use for tracking migration status. Defaults tomigrations
.