Use node name to unregister with ironic
This commit is contained in:
parent
99a5aa8b77
commit
810a329593
@ -387,34 +387,25 @@ module.exports.registerpost = function registerpost(req, res, next) {
|
|||||||
*/
|
*/
|
||||||
module.exports.unregisterdel = function unregisterdel(req, res, next) {
|
module.exports.unregisterdel = function unregisterdel(req, res, next) {
|
||||||
var ironicToken;
|
var ironicToken;
|
||||||
|
//TODO allow using name or ironic node uuid
|
||||||
return keystone.authenticatePassword(ironicConfig.os_tenant_name, ironicConfig.os_username,
|
return keystone.authenticatePassword(ironicConfig.os_tenant_name, ironicConfig.os_username,
|
||||||
ironicConfig.os_password).
|
ironicConfig.os_password).
|
||||||
then(function (token) {
|
then(function (token) {
|
||||||
ironicToken = JSON.parse(token).access.token.id;
|
ironicToken = JSON.parse(token).access.token.id;
|
||||||
return ironic.get_node(ironicToken, req.swagger.params.identifier.value);
|
|
||||||
}).
|
|
||||||
then(function (ironicNode) {
|
|
||||||
if (JSON.parse(ironicNode).hasOwnProperty('extra')) {
|
|
||||||
return monorail.request_whitelist_del(JSON.parse(ironicNode).extra.nodeid);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
throw { error_message: 'Node is not registered with Shovel' };
|
|
||||||
}
|
|
||||||
}).
|
|
||||||
then(function () {
|
|
||||||
return ironic.delete_node(ironicToken, req.swagger.params.identifier.value);
|
return ironic.delete_node(ironicToken, req.swagger.params.identifier.value);
|
||||||
}).
|
})
|
||||||
then(function (del_node) {
|
.then(function (del_node) {
|
||||||
if (del_node && JSON.parse(del_node).error_message) {
|
if (del_node && JSON.parse(del_node).error_message) {
|
||||||
throw (del_node);
|
throw (del_node);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
logger.debug('ironicNode: ' + req.swagger.params.identifier.value + ' is been deleted susccessfully');
|
logger.info('ironicNode: ' + req.swagger.params.identifier.value + ' is been deleted susccessfully');
|
||||||
res.setHeader('Content-Type', 'application/json');
|
res.setHeader('Content-Type', 'application/json');
|
||||||
var success = {
|
var success = {
|
||||||
result: 'success'
|
result: 'success'
|
||||||
};
|
};
|
||||||
res.end(JSON.stringify(success));
|
res.end(JSON.stringify(success));
|
||||||
|
return monorail.request_whitelist_del(req.swagger.params.identifier.value);
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.catch(function (err) {
|
.catch(function (err) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user