@platforma-sdk/workflow-tengo 2.15.1 → 2.15.3
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/index.d.ts +1 -1
- package/dist/index.js +1 -0
- package/dist/index.mjs +1 -0
- package/dist/tengo/lib/exec.internal.lib.tengo +1 -1
- package/dist/tengo/lib/exec.lib.tengo +2 -2
- package/dist/tengo/lib/exec.monetization.lib.tengo +35 -8
- package/dist/tengo/lib/exec.monetization_internal.lib.tengo +36 -16
- package/dist/tengo/tpl/exec.R.create-renv.plj.gz +0 -0
- package/dist/tengo/tpl/exec.exec.plj.gz +0 -0
- package/dist/tengo/tpl/exec.monetization_info.plj.gz +0 -0
- package/dist/tengo/tpl/exec.monetization_to_json.plj.gz +0 -0
- package/dist/tengo/tpl/exec.python.create-venv.plj.gz +0 -0
- package/dist/tengo/tpl/exec.python.install-deps.plj.gz +0 -0
- package/dist/tengo/tpl/ll.get-field.plj.gz +0 -0
- package/dist/tengo/tpl/pframes.export-multiple-pcolumns.plj.gz +0 -0
- package/dist/tengo/tpl/pframes.export-pframe.plj.gz +0 -0
- package/dist/tengo/tpl/pframes.export-single-pcolumn.plj.gz +0 -0
- package/dist/tengo/tpl/pframes.import-dir.plj.gz +0 -0
- package/dist/tengo/tpl/pframes.process-pcolumn-data.plj.gz +0 -0
- package/dist/tengo/tpl/pframes.remove-nulls.plj.gz +0 -0
- package/dist/tengo/tpl/pframes.xsv-export-pframe.plj.gz +0 -0
- package/dist/tengo/tpl/pframes.xsv-import-if-not-null.plj.gz +0 -0
- package/dist/tengo/tpl/pframes.xsv-import-map.plj.gz +0 -0
- package/dist/tengo/tpl/waiter.waiter.plj.gz +0 -0
- package/dist/tengo/tpl/workdir.save.plj.gz +0 -0
- package/dist/tengo/tpl/workflow.build-ctx.plj.gz +0 -0
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
declare type TemplateFromFile = { readonly type: "from-file"; readonly path: string; };
|
|
2
|
-
declare type TplName = "ll.get-field" | "pframes.export-single-pcolumn" | "pframes.import-dir" | "pframes.remove-nulls" | "waiter.waiter" | "workdir.save" | "workflow.build-ctx" | "exec.R.create-renv" | "exec.python.install-deps" | "pframes.export-multiple-pcolumns" | "exec.python.create-venv" | "exec.monetization_to_json" | "exec.exec" | "pframes.xsv-export-pframe" | "pframes.xsv-import-if-not-null" | "pframes.xsv-import-map" | "pframes.process-pcolumn-data" | "pframes.export-pframe";
|
|
2
|
+
declare type TplName = "ll.get-field" | "pframes.export-single-pcolumn" | "pframes.import-dir" | "pframes.remove-nulls" | "waiter.waiter" | "workdir.save" | "workflow.build-ctx" | "exec.R.create-renv" | "exec.python.install-deps" | "pframes.export-multiple-pcolumns" | "exec.python.create-venv" | "exec.monetization_to_json" | "exec.exec" | "exec.monetization_info" | "pframes.xsv-export-pframe" | "pframes.xsv-import-if-not-null" | "pframes.xsv-import-map" | "pframes.process-pcolumn-data" | "pframes.export-pframe";
|
|
3
3
|
declare const Templates: Record<TplName, TemplateFromFile>;
|
|
4
4
|
export { Templates };
|
package/dist/index.js
CHANGED
|
@@ -12,6 +12,7 @@ module.exports = { Templates: {
|
|
|
12
12
|
'exec.python.create-venv': { type: 'from-file', path: require.resolve('./tengo/tpl/exec.python.create-venv.plj.gz') },
|
|
13
13
|
'exec.monetization_to_json': { type: 'from-file', path: require.resolve('./tengo/tpl/exec.monetization_to_json.plj.gz') },
|
|
14
14
|
'exec.exec': { type: 'from-file', path: require.resolve('./tengo/tpl/exec.exec.plj.gz') },
|
|
15
|
+
'exec.monetization_info': { type: 'from-file', path: require.resolve('./tengo/tpl/exec.monetization_info.plj.gz') },
|
|
15
16
|
'pframes.xsv-export-pframe': { type: 'from-file', path: require.resolve('./tengo/tpl/pframes.xsv-export-pframe.plj.gz') },
|
|
16
17
|
'pframes.xsv-import-if-not-null': { type: 'from-file', path: require.resolve('./tengo/tpl/pframes.xsv-import-if-not-null.plj.gz') },
|
|
17
18
|
'pframes.xsv-import-map': { type: 'from-file', path: require.resolve('./tengo/tpl/pframes.xsv-import-map.plj.gz') },
|
package/dist/index.mjs
CHANGED
|
@@ -13,6 +13,7 @@ export const Templates = {
|
|
|
13
13
|
'exec.python.create-venv': { type: 'from-file', path: resolve(import.meta.dirname, './tengo/tpl/exec.python.create-venv.plj.gz') },
|
|
14
14
|
'exec.monetization_to_json': { type: 'from-file', path: resolve(import.meta.dirname, './tengo/tpl/exec.monetization_to_json.plj.gz') },
|
|
15
15
|
'exec.exec': { type: 'from-file', path: resolve(import.meta.dirname, './tengo/tpl/exec.exec.plj.gz') },
|
|
16
|
+
'exec.monetization_info': { type: 'from-file', path: resolve(import.meta.dirname, './tengo/tpl/exec.monetization_info.plj.gz') },
|
|
16
17
|
'pframes.xsv-export-pframe': { type: 'from-file', path: resolve(import.meta.dirname, './tengo/tpl/pframes.xsv-export-pframe.plj.gz') },
|
|
17
18
|
'pframes.xsv-import-if-not-null': { type: 'from-file', path: resolve(import.meta.dirname, './tengo/tpl/pframes.xsv-import-if-not-null.plj.gz') },
|
|
18
19
|
'pframes.xsv-import-map': { type: 'from-file', path: resolve(import.meta.dirname, './tengo/tpl/pframes.xsv-import-map.plj.gz') },
|
|
@@ -174,7 +174,7 @@ _loadRRunEnvironment := func(operationMode, descriptor, softName, softPkg) {
|
|
|
174
174
|
"RENV_PATHS_SOURCE": _newArg(false, path.join(renvRootArg, "sources")),
|
|
175
175
|
"RENV_PATHS_CACHE": _newArg(false, path.join(renvRootArg, "cache")),
|
|
176
176
|
"RENV_PATHS_RENV": _newArg(false, path.join(_expr(_ARG_VAR_R_VENV), "renv")),
|
|
177
|
-
"RENV_PATHS_LOCKFILE": _newArg(false, path.join(
|
|
177
|
+
"RENV_PATHS_LOCKFILE": _newArg(false, path.join(renvRootArg, "renv.lock"))
|
|
178
178
|
}
|
|
179
179
|
|
|
180
180
|
if (operationMode != "dev-local") {
|
|
@@ -2,22 +2,35 @@
|
|
|
2
2
|
|
|
3
3
|
ll := import("@platforma-sdk/workflow-tengo:ll")
|
|
4
4
|
monetization := import("@platforma-sdk/workflow-tengo:exec.monetization_internal")
|
|
5
|
-
|
|
5
|
+
assets := import("@platforma-sdk/workflow-tengo:assets")
|
|
6
|
+
render := import("@platforma-sdk/workflow-tengo:render")
|
|
6
7
|
path := import("@platforma-sdk/workflow-tengo:path")
|
|
7
|
-
constants := import("@platforma-sdk/workflow-tengo:exec.constants")
|
|
8
8
|
smart := import("@platforma-sdk/workflow-tengo:smart")
|
|
9
9
|
validation := import("@platforma-sdk/workflow-tengo:validation")
|
|
10
10
|
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
11
18
|
builder := func(productKey) {
|
|
12
19
|
mnz := monetization.init()
|
|
13
20
|
monetization.enable(mnz, productKey)
|
|
14
21
|
monetization.setDryRun(mnz, true)
|
|
15
22
|
|
|
23
|
+
date := undefined
|
|
16
24
|
filesToAdd := {}
|
|
17
25
|
filesToWrite := {}
|
|
18
26
|
|
|
19
27
|
self := undefined
|
|
20
28
|
self = ll.toStrict({
|
|
29
|
+
setDate: func(newDate) {
|
|
30
|
+
date = newDate
|
|
31
|
+
return self
|
|
32
|
+
},
|
|
33
|
+
|
|
21
34
|
addFile: func(fileName, file, params) {
|
|
22
35
|
ll.assert(is_string(fileName), "monetization.builder().addFile: fileName must be a string")
|
|
23
36
|
ll.assert(smart.isReference(file), "monetization.builder().addFile: file must be a reference")
|
|
@@ -42,15 +55,29 @@ builder := func(productKey) {
|
|
|
42
55
|
return self
|
|
43
56
|
},
|
|
44
57
|
|
|
58
|
+
setUrl: func(url) {
|
|
59
|
+
monetization.setUrl(mnz, url)
|
|
60
|
+
return self
|
|
61
|
+
},
|
|
62
|
+
|
|
45
63
|
build: func() {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
64
|
+
ll.assert(!is_undefined(date), "monetization.builder().build: date must be set")
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
|
|
50
69
|
|
|
51
|
-
result :=
|
|
70
|
+
result := render.create(
|
|
71
|
+
assets.importTemplate("@platforma-sdk/workflow-tengo:exec.monetization_info"),
|
|
72
|
+
{
|
|
73
|
+
date: date, // solely for deduplication
|
|
74
|
+
monetization: monetization.toJson(mnz),
|
|
75
|
+
filesToAdd: filesToAdd,
|
|
76
|
+
filesToWrite: filesToWrite
|
|
77
|
+
}
|
|
78
|
+
)
|
|
52
79
|
|
|
53
|
-
return result
|
|
80
|
+
return result.output("info")
|
|
54
81
|
}
|
|
55
82
|
})
|
|
56
83
|
|
|
@@ -31,7 +31,7 @@ mnzClientStdoutSchema := ["or",
|
|
|
31
31
|
spentRuns: "number",
|
|
32
32
|
runsToSpend: "number",
|
|
33
33
|
willRemainAfterRun: "number",
|
|
34
|
-
subscription: {
|
|
34
|
+
"subscription,?": {
|
|
35
35
|
availableRuns: "number",
|
|
36
36
|
startsAt: "string",
|
|
37
37
|
expiresAt: "string"
|
|
@@ -53,7 +53,10 @@ init := func() {
|
|
|
53
53
|
isDryRun: false,
|
|
54
54
|
|
|
55
55
|
|
|
56
|
-
fileParams: {}
|
|
56
|
+
fileParams: {},
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
url: undefined
|
|
57
60
|
})
|
|
58
61
|
}
|
|
59
62
|
|
|
@@ -66,7 +69,8 @@ schema := {
|
|
|
66
69
|
"enabled": "bool",
|
|
67
70
|
"productKey": "string",
|
|
68
71
|
"isDryRun": "bool",
|
|
69
|
-
"fileParams": {"any": fileParamsSchema}
|
|
72
|
+
"fileParams": {"any": fileParamsSchema},
|
|
73
|
+
"url,?": "string"
|
|
70
74
|
}
|
|
71
75
|
|
|
72
76
|
|
|
@@ -110,19 +114,6 @@ enable := func(mnz, productKey) {
|
|
|
110
114
|
mnz.productKey = productKey
|
|
111
115
|
}
|
|
112
116
|
|
|
113
|
-
setDryRun := func(mnz, isDryRun) {
|
|
114
|
-
ll.assert(mnz.enabled,
|
|
115
|
-
"monetization.setDryRun(): monetization must be explicitly enabled by enableMnz(productKey) function")
|
|
116
|
-
|
|
117
|
-
ll.assert(is_bool(isDryRun),
|
|
118
|
-
"monetization.setDryRun(): isDryRun must be boolean, got %v", isDryRun)
|
|
119
|
-
|
|
120
|
-
validation.assertType(mnz, schema,
|
|
121
|
-
"monetization.setDryRun(): mnz object does not fit schema")
|
|
122
|
-
|
|
123
|
-
mnz.isDryRun = isDryRun
|
|
124
|
-
}
|
|
125
|
-
|
|
126
117
|
|
|
127
118
|
shouldRun := func(mnz) {
|
|
128
119
|
if mnz.enabled {
|
|
@@ -159,6 +150,32 @@ addFileParams := func(mnz, fileName, params) {
|
|
|
159
150
|
mnz.fileParams[fileName] = params
|
|
160
151
|
}
|
|
161
152
|
|
|
153
|
+
setDryRun := func(mnz, isDryRun) {
|
|
154
|
+
ll.assert(mnz.enabled,
|
|
155
|
+
"monetization.setDryRun(): monetization must be explicitly enabled by enableMnz(productKey) function")
|
|
156
|
+
|
|
157
|
+
ll.assert(is_bool(isDryRun),
|
|
158
|
+
"monetization.setDryRun(): isDryRun must be boolean, got %v", isDryRun)
|
|
159
|
+
|
|
160
|
+
validation.assertType(mnz, schema,
|
|
161
|
+
"monetization.setDryRun(): mnz object does not fit schema")
|
|
162
|
+
|
|
163
|
+
mnz.isDryRun = isDryRun
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
setUrl := func(mnz, url) {
|
|
167
|
+
ll.assert(mnz.enabled,
|
|
168
|
+
"monetization.setUrl(): monetization must be explicitly enabled by enableMnz(productKey) function")
|
|
169
|
+
|
|
170
|
+
ll.assert(is_string(url),
|
|
171
|
+
"monetization.setUrl(): url must be string, got %v", url)
|
|
172
|
+
|
|
173
|
+
validation.assertType(mnz, schema,
|
|
174
|
+
"monetization.setUrl(): mnz object does not fit schema")
|
|
175
|
+
|
|
176
|
+
mnz.url = url
|
|
177
|
+
}
|
|
178
|
+
|
|
162
179
|
|
|
163
180
|
|
|
164
181
|
|
|
@@ -191,6 +208,9 @@ run := func(mnz, wd, queue) {
|
|
|
191
208
|
if mnz.isDryRun {
|
|
192
209
|
builder.arg("-dry-run")
|
|
193
210
|
}
|
|
211
|
+
if mnz.url {
|
|
212
|
+
builder.arg(mnz.isDryRun ? "-dry-run-url" : "-url").arg(mnz.url)
|
|
213
|
+
}
|
|
194
214
|
builder.arg("-productKey").arg(mnz.productKey)
|
|
195
215
|
|
|
196
216
|
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@platforma-sdk/workflow-tengo",
|
|
3
|
-
"version": "2.15.
|
|
3
|
+
"version": "2.15.3",
|
|
4
4
|
"description": "Tengo SDK library",
|
|
5
5
|
"types": "./dist/index.d.ts",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"@platforma-open/milaboratories.software-small-binaries": "^1.15.13"
|
|
21
21
|
},
|
|
22
22
|
"devDependencies": {
|
|
23
|
-
"@platforma-sdk/tengo-builder": "^1.19.
|
|
23
|
+
"@platforma-sdk/tengo-builder": "^1.19.2"
|
|
24
24
|
},
|
|
25
25
|
"scripts": {
|
|
26
26
|
"type-check": "pl-tengo check",
|