2 var BPromise = require('bluebird');
4 var logger = require('../config/logger')('migration');
6 var Migration = function(queryInterface) {
7 this.queryInterface = queryInterface;
10 Migration.prototype.addColumn = function(table, column, type) {
11 return this.queryInterface
12 .addColumn(table, column, type)
14 logger.info('Added column %s to %s', column, table);
16 .catch(function(err) {
17 logger.info(JSON.stringify(err));
22 Migration.prototype.removeColumn = function(table, column) {
23 return this.queryInterface
24 .removeColumn(table, column)
26 logger.info('Removed column %s from %s', column, table);
28 .catch(function(err) {
29 logger.info(JSON.stringify(err));
34 Migration.prototype.renameColumn = function(table, oldColumn, newColumn) {
35 return this.queryInterface
36 .renameColumn(table, oldColumn, newColumn)
38 logger.info('Renamed column from %s to %s on %s', oldColumn, newColumn, table);
40 .catch(function(err) {
41 logger.info(JSON.stringify(err));
45 Migration.prototype.dropTable = function(table) {
46 return this.queryInterface
49 logger.info('table dropped %s', table);
51 .catch(function(err) {
52 logger.info(JSON.stringify(err));
58 up: function(queryInterface, Sequelize) {
59 var migration = new Migration(queryInterface);
61 migration.dropTable('tools_schedules', {
66 down: function(queryInterface, Sequelize) {
67 var migration = new Migration(queryInterface);