|
@ -474,15 +474,23 @@ class CoreNodeService extends SiteService { |
|
|
// provides an abort point if any listener throws
|
|
|
// provides an abort point if any listener throws
|
|
|
await this.emitDtpEvent('disconnect-pre', { core }); |
|
|
await this.emitDtpEvent('disconnect-pre', { core }); |
|
|
|
|
|
|
|
|
const disconnect = await this.sendRequest(core, { |
|
|
let disconnect; |
|
|
|
|
|
try { |
|
|
|
|
|
disconnect = await this.sendRequest(core, { |
|
|
method: 'DELETE', |
|
|
method: 'DELETE', |
|
|
url: `/core/connect/node/${core.oauth.clientId}`, |
|
|
url: `/core/connect/node/${core.oauth.clientId}`, |
|
|
}); |
|
|
}); |
|
|
|
|
|
} catch (error) { |
|
|
|
|
|
if ((error.code !== 'EPROTO') && (error.statusCode !== 404)) { |
|
|
|
|
|
throw new SiteError(error.statusCode, 'Failed to disconnect from Core'); |
|
|
|
|
|
} |
|
|
|
|
|
} finally { |
|
|
this.log.alert('Core disconnect request complete', { |
|
|
this.log.alert('Core disconnect request complete', { |
|
|
name: core.meta.name, |
|
|
name: core.meta.name, |
|
|
domain: core.meta.domain, |
|
|
domain: core.meta.domain, |
|
|
disconnect, |
|
|
disconnect, |
|
|
}); |
|
|
}); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
try { |
|
|
try { |
|
|
await this.emitDtpEvent('disconnect-post', { core, disconnect }); |
|
|
await this.emitDtpEvent('disconnect-post', { core, disconnect }); |
|
@ -496,8 +504,8 @@ class CoreNodeService extends SiteService { |
|
|
.cursor() |
|
|
.cursor() |
|
|
.eachAsync(this.removeUser.bind(this, core), 1); |
|
|
.eachAsync(this.removeUser.bind(this, core), 1); |
|
|
|
|
|
|
|
|
// await CoreNodeConnect.deleteMany({ 'site.domainKey': core.meta.domainKey });
|
|
|
await CoreNodeConnect.deleteMany({ 'site.domainKey': core.meta.domainKey }); |
|
|
// await CoreNodeRequest.deleteMany({ core: core._id });
|
|
|
await CoreNodeRequest.deleteMany({ core: core._id }); |
|
|
|
|
|
|
|
|
try { |
|
|
try { |
|
|
await this.emitDtpEvent('disconnect', { core, disconnect }); |
|
|
await this.emitDtpEvent('disconnect', { core, disconnect }); |
|
@ -506,6 +514,8 @@ class CoreNodeService extends SiteService { |
|
|
// keep going
|
|
|
// keep going
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
await CoreNode.deleteOne({ _id: core._id }); |
|
|
|
|
|
|
|
|
return disconnect; |
|
|
return disconnect; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|