progress
This commit is contained in:
parent
cad230eee9
commit
e163f0698b
1 changed files with 7 additions and 3 deletions
|
@ -6,20 +6,24 @@ import { MongoIdValidation } from "../../../core/validations/mongo_id_validation
|
||||||
import { ProcessWatcherAndDatabaseUpdateService } from "../../datasets/domain/create_dataset_scenario";
|
import { ProcessWatcherAndDatabaseUpdateService } from "../../datasets/domain/create_dataset_scenario";
|
||||||
import { CalculationInstanceDBModel, ICalculationInstance } from "../models/calculations_instance_database_model";
|
import { CalculationInstanceDBModel, ICalculationInstance } from "../models/calculations_instance_database_model";
|
||||||
import { Result } from "../../../core/helpers/result";
|
import { Result } from "../../../core/helpers/result";
|
||||||
|
import { CreateFileUseCase } from "../../../core/usecases/create_file_usecase";
|
||||||
|
|
||||||
export class ExecCalculationInstanceProcessScenario extends CallbackStrategyWithIdQuery {
|
export class ExecCalculationInstanceProcessScenario extends CallbackStrategyWithIdQuery {
|
||||||
idValidationExpression = new MongoIdValidation();
|
idValidationExpression = new MongoIdValidation();
|
||||||
call = async (id: string): ResponseBase =>
|
call = async (id: string): ResponseBase =>
|
||||||
(await new ReadByIdDataBaseModelUseCase<ICalculationInstance>(CalculationInstanceDBModel).call(id)).map(
|
(await new ReadByIdDataBaseModelUseCase<ICalculationInstance>(CalculationInstanceDBModel).call(id)).map(
|
||||||
async (model) => {
|
async (model) => {
|
||||||
|
const fileOutPath = model.instancePath.pathNormalize() + "/form.json";
|
||||||
return (await new IsHaveActiveProcessUseCase().call()).map(async () => {
|
return (await new IsHaveActiveProcessUseCase().call()).map(async () => {
|
||||||
const execCommand = `${model.script} --form '${JSON.stringify(
|
const execCommand = `${model.script} --path ${model.instancePath.pathNormalize()} --form ${fileOutPath}`;
|
||||||
model.formBuilder
|
console.log(execCommand);
|
||||||
)}' --path ${model.instancePath.pathNormalize()}`;
|
|
||||||
|
await new CreateFileUseCase().call(fileOutPath, Buffer.from(JSON.stringify(model.formBuilder)));
|
||||||
await CalculationInstanceDBModel.findById(id).updateOne({
|
await CalculationInstanceDBModel.findById(id).updateOne({
|
||||||
processStatus: "RUN",
|
processStatus: "RUN",
|
||||||
lastProcessExecCommand: execCommand,
|
lastProcessExecCommand: execCommand,
|
||||||
});
|
});
|
||||||
|
|
||||||
new ExecProcessUseCase().call(
|
new ExecProcessUseCase().call(
|
||||||
// @ts-expect-error
|
// @ts-expect-error
|
||||||
`${model.project.rootDir}/`,
|
`${model.project.rootDir}/`,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue