
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
loopback-component-migration
Advanced tools
A library to add simple database migration support to loopback projects. support loopback v3.x
Migrations that have been run will be stored in a table called 'Migrations'. The library will read the loopback datasources.json files based on the NODE_ENV environment variable just like loopback does. The usage is based on the node-db-migrate project.
npm install --save loopback-component-migration
Create a component-config.json file in your server folder (if you don't already have one)
Enable the component inside component-config.json.
{
"loopback-component-migration": {
"key": "value"
}
}
Options:
log
[String] : Name of the logging class to use for log messages. (default: 'console')
enableRest
[Boolean] : A boolean indicating wether migrate/rollback REST api methods should be exposed on the Migration model. (default: false)
migrationsDir
[String] : Directory containing migration scripts. (default: server/migrations)
dataSource
[String] : Datasource to connect the Migration and MigrationMap models to. (default: db)
acls
[Array] : ACLs to apply to Migration and MigrationMap models. (default: [])
public
[Boolean] : A boolean indicating wether REST api methods should be exposed on the Migration and MigrationMap models. (default: false)
Migrations can be run by calling the static migrate method on the Migration model. If you do not specify a callback, a promise will be returned.
Run all pending migrations:
Migrate.migrate('up', '', function(err) {});
Run all pending migrations upto and including 0002-somechanges:
Migrate.migrate('up', '0002-somechanges', function(err) {});
Rollback all migrations:
Migrate.migrate('down', '', function(err) {}); //*the second param can not be missed
Rollback migrations upto and including 0002-somechanges:
Migrate.migrate('down', '0002-somechanges', function(err) {});
module.exports = {
up: function(app, next) {
app.models.Users.create({ ... }, next);
},
down: function(app, next) {
app.models.Users.destroyAll({ ... }, next);
}
};
/* executing raw sql */
module.exports = {
up: function(app, next) {
app.dataSources.mysql.connector.query('CREATE TABLE `my_table` ...;', next);
},
down: function(app, next) {
app.dataSources.mysql.connector.query('DROP TABLE `my_table`;', next);
}
};
FAQs
Migration framework for Loopback.
The npm package loopback-component-migration receives a total of 1 weekly downloads. As such, loopback-component-migration popularity was classified as not popular.
We found that loopback-component-migration demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.