diff --git a/docsfera.json b/docsfera.json index 7ec6259..00b43df 100644 --- a/docsfera.json +++ b/docsfera.json @@ -3580,7 +3580,10 @@ "content": { "application/json": { "schema": { - "type": "string" + "type": "array", + "items": { + "type": "object" + } } } } @@ -3644,6 +3647,46 @@ ] } }, + "/pipelinesV2/{id}/upgrade": { + "patch": { + "operationId": "PipelinesController_upgradeConnector", + "parameters": [ + { + "name": "dadosfera-lang", + "in": "header", + "required": false, + "schema": { + "enum": [ + "pt-br", + "en-us" + ], + "type": "string" + } + }, + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "" + } + }, + "tags": [ + "PipelinesV2" + ], + "security": [ + { + "access-token": [] + } + ] + } + }, "/pipelinesV2/init-upload": { "post": { "operationId": "PipelinesController_initUploadFile", diff --git a/package-lock.json b/package-lock.json index a5470e6..f26f5fe 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17,7 +17,7 @@ "@aws-sdk/signature-v4": "^3.370.0", "@dadosfera/dadosfera-logs": "^1.0.0-beta.4", "@dadosfera/protospack": "2.5.3", - "@dadosfera/protospack-v2": "3.40.0-beta.8", + "@dadosfera/protospack-v2": "3.40.0-beta.9", "@grpc/grpc-js": "^1.9.3", "@grpc/proto-loader": "^0.7.9", "@nestjs/cli": "^9.5.0", @@ -1745,9 +1745,9 @@ } }, "node_modules/@dadosfera/protospack-v2": { - "version": "3.40.0-beta.8", - "resolved": "https://dadosfera-611330257153.d.codeartifact.us-east-1.amazonaws.com/npm/dadosfera-npm/@dadosfera/protospack-v2/-/protospack-v2-3.40.0-beta.8.tgz", - "integrity": "sha512-JE5qMjqB3UOM+tCUxB1EwYLQW0PecsaQIa1KDpKEaG3lrzG/H13z8iJi3WH/DuVav2EI94i9VcJWJ1Y0F7ribw==", + "version": "3.40.0-beta.9", + "resolved": "https://dadosfera-611330257153.d.codeartifact.us-east-1.amazonaws.com/npm/dadosfera-npm/@dadosfera/protospack-v2/-/protospack-v2-3.40.0-beta.9.tgz", + "integrity": "sha512-8jbCpzxQnDax41yhw8yQJLB1VVp4PY8grj2H5oBgV+BCUf2y5lp0EPzLwVZsnOsfsXNAXHyNmbZbAjmJC1ipaw==", "license": "ISC", "dependencies": { "@grpc/grpc-js": "^1.9.3", diff --git a/package.json b/package.json index ab6d629..878d46a 100644 --- a/package.json +++ b/package.json @@ -35,7 +35,7 @@ "@aws-sdk/signature-v4": "^3.370.0", "@dadosfera/dadosfera-logs": "^1.0.0-beta.4", "@dadosfera/protospack": "2.5.3", - "@dadosfera/protospack-v2": "3.40.0-beta.8", + "@dadosfera/protospack-v2": "3.40.0-beta.9", "@grpc/grpc-js": "^1.9.3", "@grpc/proto-loader": "^0.7.9", "@nestjs/cli": "^9.5.0", diff --git a/src/modules/pipelinesV2/pipelines.controller.ts b/src/modules/pipelinesV2/pipelines.controller.ts index c424f51..e90af52 100644 --- a/src/modules/pipelinesV2/pipelines.controller.ts +++ b/src/modules/pipelinesV2/pipelines.controller.ts @@ -15,6 +15,7 @@ import { HttpException, BadRequestException, UseGuards, + Res, } from '@nestjs/common'; import { ApiCreatedResponse, @@ -368,6 +369,21 @@ export class PipelinesController { return response; } + @Patch('/:id/upgrade') + @RequireSomePermission(PERMISSIONS_GROUPS.PIPELINE.permissions.UPDATE) + @HttpCode(HttpStatus.NO_CONTENT) + async upgradeConnector( + @Language() language: LanguageEnum, + @Param('id') id: string, + @User() user: RequestUser + ) { + this.logger.info('PipelinesController - upgrade connector'); + + const metadata = PackTheMetadata(user); + + await this.pipelinesClientService.upgrade(id, metadata); + } + @Delete(':id') @ApiNoContentResponse() @HttpCode(HttpStatus.NO_CONTENT) diff --git a/src/modules/pipelinesV2/pipelines.service.ts b/src/modules/pipelinesV2/pipelines.service.ts index b07330f..53d7711 100644 --- a/src/modules/pipelinesV2/pipelines.service.ts +++ b/src/modules/pipelinesV2/pipelines.service.ts @@ -176,6 +176,15 @@ export class PipelinesService implements OnModuleInit { return updatePipelineResponse; } + async upgrade(id: string, metadata: Metadata) { + await lastValueFrom( + this.pipelineWriteService.Upgrade( + { id }, + metadata, + ), + ); + } + async remove(data: { id: string; metadata: Metadata; user: RequestUser }) { const { id, metadata, user } = data; const info = {