]>
Commit | Line | Data |
---|---|---|
4d4e5cd4 | 1 | import * as express from 'express' |
34831b48 | 2 | |
e02643f3 | 3 | import { database as db } from '../../../initializers/database' |
65fcc311 | 4 | import { checkSignature, signatureValidator } from '../../../middlewares' |
4771e000 | 5 | import { PodSignature } from '../../../../shared' |
34831b48 | 6 | |
65fcc311 | 7 | const remotePodsRouter = express.Router() |
34831b48 C |
8 | |
9 | // Post because this is a secured request | |
65fcc311 C |
10 | remotePodsRouter.post('/remove', |
11 | signatureValidator, | |
34831b48 C |
12 | checkSignature, |
13 | removePods | |
14 | ) | |
15 | ||
16 | // --------------------------------------------------------------------------- | |
17 | ||
65fcc311 C |
18 | export { |
19 | remotePodsRouter | |
20 | } | |
34831b48 C |
21 | |
22 | // --------------------------------------------------------------------------- | |
23 | ||
69818c93 | 24 | function removePods (req: express.Request, res: express.Response, next: express.NextFunction) { |
4771e000 C |
25 | const signature: PodSignature = req.body.signature |
26 | const host = signature.host | |
34831b48 | 27 | |
6fcd19ba | 28 | db.Pod.loadByHost(host) |
4771e000 | 29 | .then(pod => pod.destroy()) |
6fcd19ba C |
30 | .then(() => res.type('json').status(204).end()) |
31 | .catch(err => next(err)) | |
34831b48 | 32 | } |