From d3031acfa48399d8eccc86aeb3c2320707f5b319 Mon Sep 17 00:00:00 2001 From: Ben Thompson Date: Wed, 11 Jun 2014 13:37:45 -0400 Subject: [PATCH] Grant 'ADMIN' role the ext and it's dependencies. --- scripts/lib/build_database_util.js | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/scripts/lib/build_database_util.js b/scripts/lib/build_database_util.js index e2f85ec64..0cbb1453b 100644 --- a/scripts/lib/build_database_util.js +++ b/scripts/lib/build_database_util.js @@ -314,14 +314,23 @@ regexp:true, undef:true, strict:true, trailing:true, white:true */ // register extension and dependencies extensionSql = 'do $$ plv8.elog(NOTICE, "About to register extension ' + extensionName + '"); $$ language plv8;\n' + extensionSql; + registerSql = "select xt.register_extension('%@', '%@', '%@', '', %@);\n" .f(extensionName, extensionComment, options.extensionLocation, loadOrder); + var grantExtToAdmin = "select xt.grant_role_ext('ADMIN', '%@');\n" + .f(extensionName); + + extensionSql = grantExtToAdmin + extensionSql; + dependencies = manifest.dependencies || []; _.each(dependencies, function (dependency) { var dependencySql = "select xt.register_extension_dependency('%@', '%@');\n" - .f(extensionName, dependency); - extensionSql = dependencySql + extensionSql; + .f(extensionName, dependency), + grantDependToAdmin = "select xt.grant_role_ext('ADMIN', '%@');\n" + .f(dependency); + + extensionSql = dependencySql + grantDependToAdmin + extensionSql; }); extensionSql = registerSql + extensionSql; } -- 2.39.2