diff --git a/packages/core/pipeline/src/core/file-store.ts b/packages/core/pipeline/src/core/file-store.ts index bca4ea8d..1db22a31 100644 --- a/packages/core/pipeline/src/core/file-store.ts +++ b/packages/core/pipeline/src/core/file-store.ts @@ -18,7 +18,9 @@ export interface IFileStore { export class FileStore { rootDir: string; + // pipelineId scope: string; + // historyId parent: string; constructor(options?: FileStoreOptions) { this.rootDir = fileUtils.getFileRootDir(options?.rootDir); diff --git a/packages/ui/certd-server/src/modules/pipeline/service/history-log-service.ts b/packages/ui/certd-server/src/modules/pipeline/service/history-log-service.ts index 2b56bc71..84cc4a4f 100644 --- a/packages/ui/certd-server/src/modules/pipeline/service/history-log-service.ts +++ b/packages/ui/certd-server/src/modules/pipeline/service/history-log-service.ts @@ -31,4 +31,8 @@ export class HistoryLogService extends BaseService { } await this.repository.delete({ historyId: In(numbers) }); } + + async deleteByPipelineId(id: number) { + await this.repository.delete({ pipelineId: id }); + } } diff --git a/packages/ui/certd-server/src/modules/pipeline/service/history-service.ts b/packages/ui/certd-server/src/modules/pipeline/service/history-service.ts index 3df00b12..af34254e 100644 --- a/packages/ui/certd-server/src/modules/pipeline/service/history-service.ts +++ b/packages/ui/certd-server/src/modules/pipeline/service/history-service.ts @@ -142,4 +142,21 @@ export class HistoryService extends BaseService { }); await this.logService.deleteByHistoryIds(ids); } + + async deleteByPipelineId(id: number) { + await this.repository.delete({ + pipelineId: id, + }); + + try { + const fileStore = new FileStore({ + rootDir: this.certdConfig.fileRootDir, + scope: id + '', + parent: '0', + }); + fileStore.deleteByParent(id + '', ''); + } catch (e) { + logger.error('删除文件失败', e); + } + } } diff --git a/packages/ui/certd-server/src/modules/pipeline/service/pipeline-service.ts b/packages/ui/certd-server/src/modules/pipeline/service/pipeline-service.ts index 6e57a1b9..3a2693a0 100644 --- a/packages/ui/certd-server/src/modules/pipeline/service/pipeline-service.ts +++ b/packages/ui/certd-server/src/modules/pipeline/service/pipeline-service.ts @@ -198,6 +198,8 @@ export class PipelineService extends BaseService { // const storage = new DbStorage(pipeline.userId, this.storageService); // await storage.remove(pipeline.id); await super.delete([id]); + await this.historyService.deleteByPipelineId(id); + await this.historyLogService.deleteByPipelineId(id); } async clearTriggers(id: number) {