From 698732441789ef1a678d8e12b610cb70880d934c Mon Sep 17 00:00:00 2001 From: Amir Allayarov Date: Fri, 1 Dec 2023 16:45:15 +0400 Subject: [PATCH] #RI-5133 - update pipeline endpoint --- .../api/src/modules/rdi/client/api.rdi.client.ts | 3 ++- redisinsight/api/src/modules/rdi/constants/index.ts | 1 + .../api/src/modules/rdi/rdi-pipeline.controller.ts | 13 ++++++++++++- .../api/src/modules/rdi/rdi-pipeline.service.ts | 8 +++++--- 4 files changed, 20 insertions(+), 5 deletions(-) diff --git a/redisinsight/api/src/modules/rdi/client/api.rdi.client.ts b/redisinsight/api/src/modules/rdi/client/api.rdi.client.ts index 60e08697cd..6e3f335e17 100644 --- a/redisinsight/api/src/modules/rdi/client/api.rdi.client.ts +++ b/redisinsight/api/src/modules/rdi/client/api.rdi.client.ts @@ -19,7 +19,8 @@ export class ApiRdiClient extends RdiClient { } async getPipeline(): Promise { - return null; + const response = await this.client.get(RdiUrl.GetPipeline); + return response.data; } async deploy(pipeline: RdiPipeline): Promise { diff --git a/redisinsight/api/src/modules/rdi/constants/index.ts b/redisinsight/api/src/modules/rdi/constants/index.ts index 68796fecb0..3c888a8a90 100644 --- a/redisinsight/api/src/modules/rdi/constants/index.ts +++ b/redisinsight/api/src/modules/rdi/constants/index.ts @@ -1,3 +1,4 @@ export enum RdiUrl { GetSchema = '/schema', + GetPipeline = '/pipeline', } diff --git a/redisinsight/api/src/modules/rdi/rdi-pipeline.controller.ts b/redisinsight/api/src/modules/rdi/rdi-pipeline.controller.ts index 0b00813a30..3783ea8ec9 100644 --- a/redisinsight/api/src/modules/rdi/rdi-pipeline.controller.ts +++ b/redisinsight/api/src/modules/rdi/rdi-pipeline.controller.ts @@ -1,7 +1,7 @@ import { ClassSerializerInterceptor, Controller, Get, UseInterceptors, UsePipes, ValidationPipe, } from '@nestjs/common'; -import { Rdi, RdiClientMetadata } from 'src/modules/rdi/models'; +import { Rdi, RdiPipeline, RdiClientMetadata } from 'src/modules/rdi/models'; import { ApiTags } from '@nestjs/swagger'; import { ApiEndpoint } from 'src/decorators/api-endpoint.decorator'; import { RdiPipelineService } from 'src/modules/rdi/rdi-pipeline.service'; @@ -26,4 +26,15 @@ export class RdiPipelineController { ): Promise { return this.rdiPipelineService.getSchema(rdiClientMetadata); } + + @Get('/') + @ApiEndpoint({ + description: 'Get pipeline', + responses: [{ status: 200, type: RdiPipeline }], + }) + async getPipeline( + @RequestRdiClientMetadata() rdiClientMetadata: RdiClientMetadata, + ): Promise { + return this.rdiPipelineService.getPipeline(rdiClientMetadata); + } } diff --git a/redisinsight/api/src/modules/rdi/rdi-pipeline.service.ts b/redisinsight/api/src/modules/rdi/rdi-pipeline.service.ts index 05813639cb..85203c8d79 100644 --- a/redisinsight/api/src/modules/rdi/rdi-pipeline.service.ts +++ b/redisinsight/api/src/modules/rdi/rdi-pipeline.service.ts @@ -11,10 +11,12 @@ export class RdiPipelineService { async getSchema(rdiClientMetadata: RdiClientMetadata): Promise { const client = await this.rdiClientProvider.getOrCreate(rdiClientMetadata); - const schema = await client.getSchema(); + return await client.getSchema(); + } - // todo: process somehow + async getPipeline(rdiClientMetadata: RdiClientMetadata): Promise { + const client = await this.rdiClientProvider.getOrCreate(rdiClientMetadata); - return schema; + return await client.getPipeline(); } }