verteilen-core 1.3.8 → 1.3.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/interface/base.d.ts
CHANGED
|
@@ -85,3 +85,6 @@ export interface Node extends DataHeader {
|
|
|
85
85
|
permission?: LocalPermission;
|
|
86
86
|
acl?: ACLType;
|
|
87
87
|
}
|
|
88
|
+
export declare const CreateDefaultProject: () => Project;
|
|
89
|
+
export declare const CreateDefaultTask: () => Task;
|
|
90
|
+
export declare const CreateDefaultJob: () => Job;
|
package/dist/interface/base.js
CHANGED
|
@@ -1,2 +1,45 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CreateDefaultJob = exports.CreateDefaultTask = exports.CreateDefaultProject = void 0;
|
|
4
|
+
const enum_1 = require("./enum");
|
|
5
|
+
const uuid_1 = require("uuid");
|
|
6
|
+
const CreateDefaultProject = () => {
|
|
7
|
+
return {
|
|
8
|
+
uuid: (0, uuid_1.v6)(),
|
|
9
|
+
title: "",
|
|
10
|
+
description: "",
|
|
11
|
+
tasks: [],
|
|
12
|
+
tasks_uuid: [],
|
|
13
|
+
database_uuid: ""
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
exports.CreateDefaultProject = CreateDefaultProject;
|
|
17
|
+
const CreateDefaultTask = () => {
|
|
18
|
+
return {
|
|
19
|
+
uuid: (0, uuid_1.v6)(),
|
|
20
|
+
title: "Default",
|
|
21
|
+
description: "",
|
|
22
|
+
setupjob: false,
|
|
23
|
+
cronjob: false,
|
|
24
|
+
cronjobKey: "",
|
|
25
|
+
multi: false,
|
|
26
|
+
multiKey: "",
|
|
27
|
+
properties: [],
|
|
28
|
+
jobs: [],
|
|
29
|
+
jobs_uuid: [],
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
exports.CreateDefaultTask = CreateDefaultTask;
|
|
33
|
+
const CreateDefaultJob = () => {
|
|
34
|
+
return {
|
|
35
|
+
uuid: (0, uuid_1.v6)(),
|
|
36
|
+
category: enum_1.JobCategory.Execution,
|
|
37
|
+
type: enum_1.JobType.JAVASCRIPT,
|
|
38
|
+
script: "",
|
|
39
|
+
string_args: [],
|
|
40
|
+
number_args: [],
|
|
41
|
+
boolean_args: [],
|
|
42
|
+
id_args: [],
|
|
43
|
+
};
|
|
44
|
+
};
|
|
45
|
+
exports.CreateDefaultJob = CreateDefaultJob;
|
|
@@ -9,8 +9,8 @@ export declare class Project_Module {
|
|
|
9
9
|
ProjectJobCount(uuid: string): number;
|
|
10
10
|
PopulateProject(uuid: string): Project | undefined;
|
|
11
11
|
PopulateTask(uuid: string): Task | undefined;
|
|
12
|
-
GetProjectRelatedTask(uuid: string): Array<Task
|
|
13
|
-
GetTaskRelatedJob(uuid: string): Array<Job
|
|
12
|
+
GetProjectRelatedTask(uuid: string): Promise<Array<Task>>;
|
|
13
|
+
GetTaskRelatedJob(uuid: string): Promise<Array<Job>>;
|
|
14
14
|
CloneProjects(uuids: Array<string>): Promise<Array<string>>;
|
|
15
15
|
CloneTasks(uuids: Array<string>): Promise<Array<string>>;
|
|
16
16
|
CloneJobs(uuids: Array<string>): Promise<Array<string>>;
|
|
@@ -43,23 +43,29 @@ class Project_Module {
|
|
|
43
43
|
}
|
|
44
44
|
return buffer;
|
|
45
45
|
}
|
|
46
|
-
GetProjectRelatedTask(uuid) {
|
|
46
|
+
async GetProjectRelatedTask(uuid) {
|
|
47
|
+
await this.loader.project.load(uuid, true);
|
|
47
48
|
const p = this.memory.projects.find(x => x.uuid == uuid);
|
|
48
49
|
if (!p)
|
|
49
50
|
return [];
|
|
50
51
|
const r = p.tasks_uuid.map(x => {
|
|
51
|
-
return this.
|
|
52
|
-
})
|
|
53
|
-
|
|
52
|
+
return this.loader.task.load(x, true);
|
|
53
|
+
});
|
|
54
|
+
await Promise.all(r);
|
|
55
|
+
const tasks = this.memory.tasks.filter(x => p.tasks_uuid.includes(x.uuid));
|
|
56
|
+
return tasks;
|
|
54
57
|
}
|
|
55
|
-
GetTaskRelatedJob(uuid) {
|
|
58
|
+
async GetTaskRelatedJob(uuid) {
|
|
59
|
+
await this.loader.task.load(uuid, true);
|
|
56
60
|
const p = this.memory.tasks.find(x => x.uuid == uuid);
|
|
57
61
|
if (!p)
|
|
58
62
|
return [];
|
|
59
63
|
const r = p.jobs_uuid.map(x => {
|
|
60
|
-
return this.
|
|
61
|
-
})
|
|
62
|
-
|
|
64
|
+
return this.loader.job.load(x, true);
|
|
65
|
+
});
|
|
66
|
+
await Promise.all(r);
|
|
67
|
+
const jobs = this.memory.jobs.filter(x => p.jobs_uuid.includes(x.uuid));
|
|
68
|
+
return jobs;
|
|
63
69
|
}
|
|
64
70
|
async CloneProjects(uuids) {
|
|
65
71
|
const p = uuids.map(x => this.loader.project.load(x, true));
|
package/package.json
CHANGED
package/src/interface/base.ts
CHANGED
|
@@ -6,9 +6,10 @@
|
|
|
6
6
|
/**
|
|
7
7
|
* Defined the basic compute use data structure
|
|
8
8
|
*/
|
|
9
|
-
import { DataType, DataTypeBase, JobType, JobType2, ServiceMode } from "./enum"
|
|
9
|
+
import { DataType, DataTypeBase, JobCategory, JobType, JobType2, ServiceMode } from "./enum"
|
|
10
10
|
import { ACLType, LocalPermission as LocalPermission } from "./server"
|
|
11
11
|
import { TaskLogic } from "./struct"
|
|
12
|
+
import { v6 as uuidv6 } from 'uuid'
|
|
12
13
|
|
|
13
14
|
export interface DatabaseConfigTrigger {
|
|
14
15
|
types: Array<DataTypeBase>
|
|
@@ -389,4 +390,45 @@ export interface Node extends DataHeader {
|
|
|
389
390
|
* Could be public, protected, private
|
|
390
391
|
*/
|
|
391
392
|
acl?: ACLType
|
|
393
|
+
}
|
|
394
|
+
|
|
395
|
+
|
|
396
|
+
export const CreateDefaultProject = () : Project => {
|
|
397
|
+
return {
|
|
398
|
+
uuid: uuidv6(),
|
|
399
|
+
title: "",
|
|
400
|
+
description: "",
|
|
401
|
+
tasks: [],
|
|
402
|
+
tasks_uuid: [],
|
|
403
|
+
database_uuid: ""
|
|
404
|
+
}
|
|
405
|
+
}
|
|
406
|
+
|
|
407
|
+
export const CreateDefaultTask = () : Task => {
|
|
408
|
+
return {
|
|
409
|
+
uuid: uuidv6(),
|
|
410
|
+
title: "Default",
|
|
411
|
+
description: "",
|
|
412
|
+
setupjob: false,
|
|
413
|
+
cronjob: false,
|
|
414
|
+
cronjobKey: "",
|
|
415
|
+
multi: false,
|
|
416
|
+
multiKey: "",
|
|
417
|
+
properties: [],
|
|
418
|
+
jobs: [],
|
|
419
|
+
jobs_uuid: [],
|
|
420
|
+
}
|
|
421
|
+
}
|
|
422
|
+
|
|
423
|
+
export const CreateDefaultJob = () : Job => {
|
|
424
|
+
return {
|
|
425
|
+
uuid: uuidv6(),
|
|
426
|
+
category: JobCategory.Execution,
|
|
427
|
+
type: JobType.JAVASCRIPT,
|
|
428
|
+
script: "",
|
|
429
|
+
string_args: [],
|
|
430
|
+
number_args: [],
|
|
431
|
+
boolean_args: [],
|
|
432
|
+
id_args: [],
|
|
433
|
+
}
|
|
392
434
|
}
|
|
@@ -61,26 +61,32 @@ export class Project_Module {
|
|
|
61
61
|
* @param uuid Project UUID
|
|
62
62
|
* @returns Related Tasks
|
|
63
63
|
*/
|
|
64
|
-
GetProjectRelatedTask(uuid:string):Array<Task
|
|
64
|
+
async GetProjectRelatedTask(uuid:string):Promise<Array<Task>> {
|
|
65
|
+
await this.loader.project.load(uuid, true)
|
|
65
66
|
const p = this.memory.projects.find(x => x.uuid == uuid)
|
|
66
67
|
if(!p) return []
|
|
67
68
|
const r = p.tasks_uuid.map(x => {
|
|
68
|
-
return this.
|
|
69
|
-
})
|
|
70
|
-
|
|
69
|
+
return this.loader.task.load(x, true)
|
|
70
|
+
})
|
|
71
|
+
await Promise.all(r)
|
|
72
|
+
const tasks = this.memory.tasks.filter(x => p.tasks_uuid.includes(x.uuid))
|
|
73
|
+
return tasks
|
|
71
74
|
}
|
|
72
75
|
/**
|
|
73
76
|
* Get jobs from task related
|
|
74
77
|
* @param uuid Task UUID
|
|
75
78
|
* @returns Related Jobs
|
|
76
79
|
*/
|
|
77
|
-
GetTaskRelatedJob(uuid:string):Array<Job
|
|
80
|
+
async GetTaskRelatedJob(uuid:string):Promise<Array<Job>> {
|
|
81
|
+
await this.loader.task.load(uuid, true)
|
|
78
82
|
const p = this.memory.tasks.find(x => x.uuid == uuid)
|
|
79
83
|
if(!p) return []
|
|
80
84
|
const r = p.jobs_uuid.map(x => {
|
|
81
|
-
return this.
|
|
82
|
-
})
|
|
83
|
-
|
|
85
|
+
return this.loader.job.load(x, true)
|
|
86
|
+
})
|
|
87
|
+
await Promise.all(r)
|
|
88
|
+
const jobs = this.memory.jobs.filter(x => p.jobs_uuid.includes(x.uuid))
|
|
89
|
+
return jobs
|
|
84
90
|
}
|
|
85
91
|
/**
|
|
86
92
|
* Clone Project Container
|