@nexrender/worker 1.46.9 → 1.47.1

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.
Files changed (3) hide show
  1. package/package.json +4 -4
  2. package/src/bin.js +7 -0
  3. package/src/index.js +12 -10
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nexrender/worker",
3
- "version": "1.46.9",
3
+ "version": "1.47.1",
4
4
  "author": "inlife",
5
5
  "main": "src/index.js",
6
6
  "homepage": "https://www.nexrender.com",
@@ -19,8 +19,8 @@
19
19
  ]
20
20
  },
21
21
  "dependencies": {
22
- "@nexrender/api": "^1.45.6",
23
- "@nexrender/core": "^1.46.9",
22
+ "@nexrender/api": "^1.47.1",
23
+ "@nexrender/core": "^1.47.1",
24
24
  "@nexrender/types": "^1.45.6",
25
25
  "arg": "^4.1.0",
26
26
  "chalk": "^2.4.2",
@@ -29,5 +29,5 @@
29
29
  "publishConfig": {
30
30
  "access": "public"
31
31
  },
32
- "gitHead": "56d4c1e8567a9c5ee67cef4b563a36e70238cbd6"
32
+ "gitHead": "01ec1b144a4a389f2f0da9bcf0c88d99b9448641"
33
33
  }
package/src/bin.js CHANGED
@@ -14,6 +14,7 @@ const args = arg({
14
14
  '--cleanup': Boolean,
15
15
 
16
16
  '--host': String,
17
+ '--name': String,
17
18
  '--secret': String,
18
19
 
19
20
  '--binary': String,
@@ -49,6 +50,7 @@ const args = arg({
49
50
  '-t': '--tag-selector',
50
51
  '-c': '--cleanup',
51
52
  '-h': '--help',
53
+ '-n': '--name',
52
54
  '-s': '--secret',
53
55
  '-b': '--binary',
54
56
  '-w': '--workpath',
@@ -86,6 +88,10 @@ if (args['--help']) {
86
88
  specify which host {cyan nexrender-server} is running at,
87
89
  and where all api requests will be forwarded to
88
90
 
91
+ -n, --name {underline unique_worker_name}
92
+ specify which name the {cyan nexrender-worker} will have,
93
+ and how it will be identified in the {cyan nexrender-server}
94
+
89
95
  -s, --secret {underline secret_string} specify a secret that will be required for every
90
96
  incoming http request to validate again
91
97
 
@@ -199,6 +205,7 @@ if (settings.hasOwnProperty('ae-params')) {
199
205
  settings['aeParams'] = settings['ae-params']
200
206
  }
201
207
 
208
+ opt('name', '--name');
202
209
  opt('binary', '--binary');
203
210
  opt('workpath', '--workpath');
204
211
  opt('no-license', '--no-license');
package/src/index.js CHANGED
@@ -1,6 +1,7 @@
1
1
  const { createClient } = require('@nexrender/api')
2
2
  const { init, render } = require('@nexrender/core')
3
3
  const { getRenderingStatus } = require('@nexrender/types/job')
4
+ const pkg = require('../package.json')
4
5
 
5
6
  const NEXRENDER_API_POLLING = process.env.NEXRENDER_API_POLLING || 30 * 1000;
6
7
  const NEXRENDER_TOLERATE_EMPTY_QUEUES = process.env.NEXRENDER_TOLERATE_EMPTY_QUEUES;
@@ -71,7 +72,10 @@ const start = async (host, secret, settings, headers) => {
71
72
  settings.tolerateEmptyQueues = NEXRENDER_TOLERATE_EMPTY_QUEUES;
72
73
  }
73
74
 
74
- const client = createClient({ host, secret, headers });
75
+ headers = headers || {};
76
+ headers['user-agent'] = ('nexrender-worker/' + pkg.version + ' ' + (headers['user-agent'] || '')).trim();
77
+
78
+ const client = createClient({ host, secret, headers, name: settings.name });
75
79
 
76
80
  settings.track('Worker Started', {
77
81
  worker_tags_set: !!settings.tagSelector,
@@ -152,15 +156,13 @@ const start = async (host, secret, settings, headers) => {
152
156
  settings.onError(job, err);
153
157
  }
154
158
 
155
- await client.updateJob(job.uid, getRenderingStatus(job)).catch((err) => {
156
- if (settings.stopOnError) {
157
- throw err;
158
- } else {
159
- console.log(`[${job.uid}] error occurred: ${err.stack}`)
160
- console.log(`[${job.uid}] render proccess stopped with error...`)
161
- console.log(`[${job.uid}] continue listening next job...`)
162
- }
163
- });
159
+ try {
160
+ await client.updateJob(job.uid, getRenderingStatus(job))
161
+ }
162
+ catch (e) {
163
+ console.log(`[${job.uid}] error while updating job state to ${job.state}. Job abandoned.`)
164
+ console.log(`[${job.uid}] error stack: ${e.stack}`)
165
+ }
164
166
 
165
167
  if (settings.stopOnError) {
166
168
  throw err;