npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

elastic-migrate

v1.0.1

Published

Easy elasicsearch index migrations

Downloads

8

Readme

elastic-migrate

Easy elasticsearch index migrations.

Install

npm install elastic-migrate

Usage

Most commands rely on ELASTICSEARCH_HOST being set as an environment variable. You can do this in many ways, but typically locally it'll be similar to one of the following:

ELASTICSEARCH_HOST=localhost:9200 elastic-migrate list
-or-
export ELASTICSEARCH_HOST=localhost:9200
elastic-migrate list

One-time setup

elastic-migrate setup
Done.

List migrations locally and on elasticsearch cluster

elastic-migrate list
[ ] 20181013140148 create_foo_bar
[ ] 20181013140201 create_baz
[ ] 20181013140207 remove_bar
[ ] 20181013140224 remove_foo

Migrate up

Migrate up can take an option in VERSION to migrate up to a specific version.

$ VERSION=20181013140148 elastic-migrate up
Migrating version=20181013140148 create_foo_bar
	[ElasticMigration] creating index=bar
	[ElasticMigration] adding alias index=bar alias=foo

elastic-migrate list
[*] 20181013140148 create_foo_bar
[ ] 20181013140201 create_baz
[ ] 20181013140207 remove_bar
[ ] 20181013140224 remove_foo

Migrate up will by default run all the migrations to the latest version.

elastic-migrate up
Migrating version=20181013140201 create_baz
	[ElasticMigration] creating index=baz
	[ElasticMigration] adding alias index=baz alias=foo
Migrating version=20181013140207 remove_bar
	[ElasticMigration] removing index=bar
Migrating version=20181013140224 remove_foo
	[ElasticMigration] removing alias index=baz alias=foo

elastic-migrate list
[*] 20181013140148 create_foo_bar
[*] 20181013140201 create_baz
[*] 20181013140207 remove_bar
[*] 20181013140224 remove_foo

Migrate down

Migrate down will by default migrate down one version.

elastic-migrate list
[*] 20181013140148 create_foo_bar
[*] 20181013140201 create_baz
[*] 20181013140207 remove_bar
[*] 20181013140224 remove_foo

elastic-migrate down
Migrating version=20181013140224 remove_foo
	[ElasticMigration] adding alias index=baz alias=foo

elastic-migrate list
[*] 20181013140148 create_foo_bar
[*] 20181013140201 create_baz
[*] 20181013140207 remove_bar
[ ] 20181013140224 remove_foo

Migrate can also take a version to migrate down to a specifc version.

$ VERSION=20181013140148 elastic-migrate list
[*] 20181013140148 create_foo_bar
[*] 20181013140201 create_baz
[*] 20181013140207 remove_bar
[ ] 20181013140224 remove_foo

$ VERSION=20181013140148 elastic-migrate down
Migrating version=20181013140207 remove_bar
	[ElasticMigration] creating index=bar
	[ElasticMigration] adding alias index=bar alias=foo
Migrating version=20181013140201 create_baz
	[ElasticMigration] removing alias index=baz alias=foo
	[ElasticMigration] removing index=baz
Migrating version=20181013140148 create_foo_bar
	[ElasticMigration] removing alias index=bar alias=foo
	[ElasticMigration] removing index=bar

elastic-migrate list
[ ] 20181013140148 create_foo_bar
[ ] 20181013140201 create_baz
[ ] 20181013140207 remove_bar
[ ] 20181013140224 remove_foo

Generate a migration

$ elastic-migrate generate <DESCRIPTION_OF_MIGRATION>

License

This project is licensed under the terms of the MIT license.