feat(pipeline-task): 流水线任务日志订阅接口。

This commit is contained in:
Ivan Li
2021-03-15 13:30:52 +08:00
parent aa92c518f0
commit 4e7c825170
12 changed files with 15803 additions and 23 deletions

View File

@ -4,10 +4,14 @@ import { PipelineTasksService } from './pipeline-tasks.service';
import { CreatePipelineTaskInput } from './dtos/create-pipeline-task.input';
import { PipelineTaskLogMessage } from './models/pipeline-task-log-message.module';
import { PipelineTaskLogArgs } from './dtos/pipeline-task-log.args';
import { PipelineTaskLogsService } from './pipeline-task-logs.service';
@Resolver()
export class PipelineTasksResolver {
constructor(private readonly service: PipelineTasksService) {}
constructor(
private readonly service: PipelineTasksService,
private readonly logsService: PipelineTaskLogsService,
) {}
@Mutation(() => PipelineTask)
async createPipelineTask(@Args('task') taskDto: CreatePipelineTaskInput) {
@ -15,4 +19,9 @@ export class PipelineTasksResolver {
}
@Subscription(() => PipelineTaskLogMessage)
async pipelineTaskLog(@Args() args: PipelineTaskLogArgs) {
const task = await this.service.findTaskById(args.taskId);
const asyncIterator = this.logsService.watchLogs(task);
return asyncIterator;
}
}