mirror of
https://github.com/Unleash/unleash.git
synced 2024-12-22 19:07:54 +01:00
368c888119
* Upgrade eslint configs to get rid of peer warning * Add pre-commit hook to format code * Lint whole project, not just lib
43 lines
978 B
JavaScript
43 lines
978 B
JavaScript
'use strict';
|
|
|
|
exports.up = function(db, callback) {
|
|
db.runSql(
|
|
`
|
|
--create new strategies-column
|
|
ALTER TABLE features ADD "strategies" json;
|
|
|
|
--populate the strategies column
|
|
UPDATE features
|
|
SET strategies = ('[{"name":"'||f.strategy_name||'","parameters":'||f.parameters||'}]')::json
|
|
FROM features as f
|
|
WHERE f.name = features.name;
|
|
|
|
--delete old strategy-columns
|
|
ALTER TABLE features DROP COLUMN "strategy_name";
|
|
ALTER TABLE features DROP COLUMN "parameters";
|
|
`,
|
|
callback
|
|
);
|
|
};
|
|
|
|
exports.down = function(db, callback) {
|
|
db.runSql(
|
|
`
|
|
--create old columns
|
|
ALTER TABLE features ADD "parameters" json;
|
|
ALTER TABLE features ADD "strategy_name" varchar(255);
|
|
|
|
--populate old columns
|
|
UPDATE features
|
|
SET strategy_name = f.strategies->0->>'name',
|
|
parameters = f.strategies->0->'parameters'
|
|
FROM features as f
|
|
WHERE f.name = features.name;
|
|
|
|
--drop new column
|
|
ALTER TABLE features DROP COLUMN "strategies";
|
|
`,
|
|
callback
|
|
);
|
|
};
|