From f8c40d1137f047bcd32e9dafcef7fb502d50b6bc Mon Sep 17 00:00:00 2001 From: Youssef Date: Wed, 19 Jan 2022 19:54:49 +0100 Subject: [PATCH] refactor: create migration to update feature types description --- .../20200805091409-add-feature-toggle-type.js | 10 +++--- ...9182603-update-toggle-types-description.js | 35 +++++++++++++++++++ 2 files changed, 40 insertions(+), 5 deletions(-) create mode 100644 src/migrations/20220119182603-update-toggle-types-description.js diff --git a/src/migrations/20200805091409-add-feature-toggle-type.js b/src/migrations/20200805091409-add-feature-toggle-type.js index 163a333271..97d3ac6347 100644 --- a/src/migrations/20200805091409-add-feature-toggle-type.js +++ b/src/migrations/20200805091409-add-feature-toggle-type.js @@ -21,11 +21,11 @@ exports.up = function (db, cb) { db.runSql.bind( db, ` - INSERT INTO feature_types(id, name, description, lifetime_days) VALUES('release', 'Release', 'Release feature toggles are used to release new features.', 40); - INSERT INTO feature_types(id, name, description, lifetime_days) VALUES('experiment', 'Experiment', 'Experiment feature toggles are used to test and verify multiple different versions of a feature.', 40); - INSERT INTO feature_types(id, name, description, lifetime_days) VALUES('operational', 'Operational', 'Operational feature toggles are used to control aspects of a rollout.', 7); - INSERT INTO feature_types(id, name, description, lifetime_days) VALUES('kill-switch', 'Kill switch', 'Kill switch feature toggles are used to quickly turn on or off critical functionality in your system.', null); - INSERT INTO feature_types(id, name, description, lifetime_days) VALUES('permission', 'Permission', 'Permission feature toggles are used to control permissions in your system.', null); + INSERT INTO feature_types(id, name, description, lifetime_days) VALUES('release', 'Release', 'Used to enable trunk-based development for teams practicing Continuous Delivery.', 40); + INSERT INTO feature_types(id, name, description, lifetime_days) VALUES('experiment', 'Experiment', 'Used to perform multivariate or A/B testing.', 40); + INSERT INTO feature_types(id, name, description, lifetime_days) VALUES('operational', 'Operational', 'Used to control operational aspects of the system behavior.', 7); + INSERT INTO feature_types(id, name, description, lifetime_days) VALUES('kill-switch', 'Kill switch', 'Used to to gracefully degrade system functionality.', null); + INSERT INTO feature_types(id, name, description, lifetime_days) VALUES('permission', 'Permission', 'Used to change the features or product experience that certain users receive.', null); `, ), ], diff --git a/src/migrations/20220119182603-update-toggle-types-description.js b/src/migrations/20220119182603-update-toggle-types-description.js new file mode 100644 index 0000000000..e16ebe6afd --- /dev/null +++ b/src/migrations/20220119182603-update-toggle-types-description.js @@ -0,0 +1,35 @@ +/* eslint camelcase: "off" */ +'use strict'; + +const DESCRIPTION = { + RELEASE: 'Release feature toggles are used to release new features.', + EXPERIMENT: + 'Experiment feature toggles are used to test and verify multiple different versions of a feature.', + OPERATIONAL: + 'Operational feature toggles are used to control aspects of a rollout.', + KILLSWITCH: + 'Kill switch feature toggles are used to quickly turn on or off critical functionality in your system.', + PERMISSION: + 'Permission feature toggles are used to control permissions in your system.', +}; + +exports.up = function (db, cb) { + db.runSql( + ` + UPDATE feature_types set description = '${DESCRIPTION.RELEASE}' where id = 'release'; + UPDATE feature_types set description = '${DESCRIPTION.EXPERIMENT}' where id = 'experiment'; + UPDATE feature_types set description = '${DESCRIPTION.OPERATIONAL}' where id = 'operational'; + UPDATE feature_types set description = '${DESCRIPTION.KILLSWITCH}' where id = 'kill-switch'; + UPDATE feature_types set description = '${DESCRIPTION.PERMISSION}' where id = 'permission'; + `, + cb, + ); +}; + +exports.down = function (db, cb) { + db.runSql( + ` + `, + cb, + ); +};