From d417dda22993ae14f8cefbece21977d4aaf15eec Mon Sep 17 00:00:00 2001 From: Christopher Kolstad Date: Mon, 11 Nov 2024 10:42:38 +0100 Subject: [PATCH] task: added migration for release plan template permissions (#8707) Due to the cascade on the permission in role_permission, the down migration does not need to remove the rows from role_permission. --- ...85745-release-plan-template-permissions.js | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 src/migrations/20241111085745-release-plan-template-permissions.js diff --git a/src/migrations/20241111085745-release-plan-template-permissions.js b/src/migrations/20241111085745-release-plan-template-permissions.js new file mode 100644 index 000000000000..0bbae2d386fd --- /dev/null +++ b/src/migrations/20241111085745-release-plan-template-permissions.js @@ -0,0 +1,30 @@ +exports.up = (db, cb) => { + db.runSql(` + INSERT INTO permissions(permission, display_name, type) VALUES + ('RELEASE_PLAN_TEMPLATE_VIEW_OVERVIEW', 'View overview of release plan templates', 'root'), + ('RELEASE_PLAN_TEMPLATE_VIEW', 'View details of specific release plan template', 'root'), + ('RELEASE_PLAN_TEMPLATE_CREATE', 'Create release plan template', 'root'), + ('RELEASE_PLAN_TEMPLATE_UPDATE', 'Update release plan template', 'root'), + ('RELEASE_PLAN_TEMPLATE_DELETE', 'Delete release plan template', 'root'); + INSERT INTO role_permission(role_id, permission, created_by_user_id) + SELECT id, 'RELEASE_PLAN_TEMPLATE_VIEW_OVERVIEW', '-1337' FROM roles WHERE name IN ('Viewer', 'Editor') AND type = 'root'; + INSERT INTO role_permission(role_id, permission, created_by_user_id) + SELECT id, 'RELEASE_PLAN_TEMPLATE_VIEW', '-1337' FROM roles WHERE name = 'Editor' AND type = 'root'; + INSERT INTO role_permission(role_id, permission, created_by_user_id) + SELECT id, 'RELEASE_PLAN_TEMPLATE_CREATE', '-1337' FROM roles WHERE name = 'Editor' AND type = 'root'; + INSERT INTO role_permission(role_id, permission, created_by_user_id) + SELECT id, 'RELEASE_PLAN_TEMPLATE_UPDATE', '-1337' FROM roles WHERE name = 'Editor' AND type = 'root'; + `, cb); + +}; + +exports.down = (db, cb) => { + db.runSql(` + DELETE + FROM permissions + WHERE permission IN + ('RELEASE_PLAN_TEMPLATE_VIEW_OVERVIEW', 'RELEASE_PLAN_TEMPLATE_VIEW', 'RELEASE_PLAN_TEMPLATE_CREATE', + 'RELEASE_PLAN_TEMPLATE_UPDATE', 'RELEASE_PLAN_TEMPLATE_DELETE'); + `, cb); +}; +