diff --git a/src/controllers/RunnerController.ts b/src/controllers/RunnerController.ts index 5d1e5e8..0a92ad2 100644 --- a/src/controllers/RunnerController.ts +++ b/src/controllers/RunnerController.ts @@ -8,6 +8,7 @@ import { UpdateRunner } from '../models/actions/UpdateRunner'; import { Runner } from '../models/entities/Runner'; import { ResponseEmpty } from '../models/responses/ResponseEmpty'; import { ResponseRunner } from '../models/responses/ResponseRunner'; +import { ScanController } from './ScanController'; @JsonController('/runners') @OpenAPI({ security: [{ "AuthToken": [] }, { "RefreshTokenCookie": [] }] }) @@ -100,6 +101,12 @@ export class RunnerController { throw new RunnerNotFoundError(); } + const runnerScans = (await this.runnerRepository.findOne({ id: runner.id }, { relations: ["scans"] })).scans; + const scanController = new ScanController; + for (let scan of runnerScans) { + scanController.remove(scan.id, force); + } + await this.runnerRepository.delete(runner); return new ResponseRunner(responseRunner); }