mirror of
https://github.com/dadosfera/maestro.git
synced 2026-10-28 03:59:07 +00:00
101 lines
2.8 KiB
TypeScript
101 lines
2.8 KiB
TypeScript
import { HttpException, HttpStatus, Injectable } from '@nestjs/common';
|
|
import { PipelinesClientService } from 'src/clients/pipelines/client.service';
|
|
import { IIdRequest, Info } from 'src/clients/pipelines/interfaces';
|
|
import { objectCamelToSnake } from 'src/utils/CaseConverter';
|
|
|
|
@Injectable()
|
|
export class PipelinesService {
|
|
constructor(private pipelineClient: PipelinesClientService) {}
|
|
|
|
async create(createPipelineDto) {
|
|
try {
|
|
const createPipelineResponse = await this.pipelineClient.create(
|
|
createPipelineDto,
|
|
);
|
|
|
|
return objectCamelToSnake(createPipelineResponse);
|
|
} catch (err) {
|
|
console.log(err);
|
|
throw new HttpException(err.message, HttpStatus.NOT_FOUND);
|
|
}
|
|
}
|
|
|
|
async findOne(data: IIdRequest) {
|
|
try {
|
|
const findOnePipelineResponse = await this.pipelineClient.findOne(data);
|
|
return objectCamelToSnake(findOnePipelineResponse);
|
|
} catch (err) {
|
|
throw new HttpException(err.message, HttpStatus.NOT_FOUND);
|
|
}
|
|
}
|
|
|
|
async findAll(data) {
|
|
try {
|
|
const findAllPipelineResponse = await this.pipelineClient.findAll(data);
|
|
|
|
return objectCamelToSnake(findAllPipelineResponse);
|
|
} catch (err) {
|
|
throw new HttpException(err.message, HttpStatus.NOT_FOUND);
|
|
}
|
|
}
|
|
|
|
async update(id: string, data, info: Info) {
|
|
try {
|
|
const updatePipelineResponse = await this.pipelineClient.update({
|
|
id,
|
|
info,
|
|
...data,
|
|
});
|
|
|
|
return objectCamelToSnake(updatePipelineResponse);
|
|
} catch (err) {
|
|
throw new HttpException(err.message, HttpStatus.NOT_FOUND);
|
|
}
|
|
}
|
|
|
|
async remove(data: IIdRequest) {
|
|
try {
|
|
const removePipelineResponse = await this.pipelineClient.remove(data);
|
|
|
|
return removePipelineResponse;
|
|
} catch (err) {
|
|
throw new HttpException(err.message, HttpStatus.NOT_FOUND);
|
|
}
|
|
}
|
|
|
|
async getPipelineLogsMessages(id: string, details: string) {
|
|
try {
|
|
const pipelineLogsResponse =
|
|
await this.pipelineClient.getPipelineLogsMessages({ id, details });
|
|
|
|
return objectCamelToSnake(pipelineLogsResponse);
|
|
} catch (err) {
|
|
throw new HttpException(err.message, HttpStatus.NOT_FOUND);
|
|
}
|
|
}
|
|
|
|
async getPipelineStatus(data: IIdRequest) {
|
|
try {
|
|
const pipelineStatusResponse =
|
|
await this.pipelineClient.getPipelineStatus(data);
|
|
|
|
return objectCamelToSnake(pipelineStatusResponse);
|
|
} catch (err) {
|
|
throw new HttpException(err.message, HttpStatus.NOT_FOUND);
|
|
}
|
|
}
|
|
|
|
async runPipeline({ id, info }: IIdRequest) {
|
|
try {
|
|
const triggerPipelineResponse = await this.pipelineClient.runPipeline({
|
|
id,
|
|
info,
|
|
});
|
|
|
|
return objectCamelToSnake(triggerPipelineResponse);
|
|
} catch (err) {
|
|
throw new HttpException(err.message, HttpStatus.NOT_FOUND);
|
|
}
|
|
}
|
|
}
|