MXS-3013: Add reload service MaxCtrl command

The command currently reloads the users of a service but it can be used to
reload other parts of it as well (e.g. encryption keys).
This commit is contained in:
Markus Mäkelä
2020-05-29 09:27:13 +03:00
parent f013d3ccd9
commit d9fdf3adc1
3 changed files with 47 additions and 0 deletions

34
maxctrl/lib/reload.js Normal file
View File

@ -0,0 +1,34 @@
/*
* Copyright (c) 2020 MariaDB Corporation Ab
*
* Use of this software is governed by the Business Source License included
* in the LICENSE.TXT file and at www.mariadb.com/bsl11.
*
* Change Date: 2024-04-23
*
* On the date above, in accordance with the Business Source License, use
* of this software will be governed by version 2 or later of the General
* Public License.
*/
require('./common.js')()
exports.command = 'reload <command>'
exports.desc = 'Reload objects'
exports.handler = function() {}
exports.builder = function(yargs) {
yargs
.command('service <service>', 'Reloads the database users of this service', function(yargs) {
return yargs.usage('Usage: reload service <service>')
}, function(argv) {
maxctrl(argv, function(host){
return doRequest(host, 'services/' + argv.service + '/reload', null, {method: 'POST'})
})
})
.usage('Usage: reload <command>')
.help()
.command('*', 'the default command', {}, function(argv) {
maxctrl(argv, function(host) {
return error('Unknown command. See output of `help reload` for a list of commands.')
})
})
}