UNPKG

5.09 kBSource Map (JSON)View Raw
1{"version":3,"sources":["../src/startGoProc.js"],"names":["paramsToArgs","params","Object","keys","map","key","join","serializeData","data","JSON","stringify","serializeDataArray","Array","isArray","startGoProc","debug","config","uri","includes","split","amqp","cmd","goRabbitPath","args","log","trace","proc","shell","stdout","on","chunk","strings","String","forEach","str","json","parse","type","emitter","emit","hash","complete","e","stderr","error","warn","setTimeout"],"mappings":"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","sourcesContent":["import { spawn } from 'child_process';\nimport get from 'lodash/get';\n\nconst paramsToArgs = (params = {}) => Object.keys(params).map((key) => [`-${key}`, params[key]].join(' '));\nconst serializeData = (data = {}) => {\n if (typeof data === 'string') return data;\n return JSON.stringify(data);\n};\nconst serializeDataArray = (data = {}) => {\n if (Array.isArray(data)) {\n return data.map(serializeData);\n }\n return serializeData(data);\n};\n\nexport default async function startGoProc() {\n // const { debug } = this.config;\n const debug = this.config.debug || false;\n let { uri } = this.config;\n if (uri.includes('?')) {\n uri = get(uri.split('?'), '0');\n }\n const params = {\n amqp: uri,\n };\n\n // const cmd = GO_RABBIT;\n const cmd = this.goRabbitPath;\n // const cmd = `${GO_RABBIT}`;\n // const cmd = `echo '${row}' | node /Users/isuvorov/projects/parser-cloud/packages/parser-cloud/rabbit-node.js`;\n const args = paramsToArgs(params);\n if (debug) {\n this.log.trace('[RM]', `${cmd} ${args.join(' ')}`);\n // echo '{\"_id\": \"5e91cc24001c9049700945bc\", \"videoId\": \"PRsKXb4e_Bo\"}' | ./rabbit -queue z-dev-TEST\n }\n const proc = spawn(cmd, args, { shell: true });\n proc.stdout.on('data', (chunk) => {\n const strings = String(chunk).split('\\n');\n strings.forEach((str) => {\n if (debug) {\n this.log.trace('[RM] stdout:', str);\n }\n try {\n const json = JSON.parse(String(str));\n if (json.type === 'response') {\n this.emitter.emit(json.hash, { complete: json.complete });\n }\n } catch (e) {\n // this.log.trace(String(chunk), 'не получилось');\n /* eslint no-empty: \"error\" */\n }\n // this.log.trace('----------------------');\n });\n });\n proc.stderr.on('data', (chunk) => {\n this.log.error(`[RM] stderr: ${chunk}`);\n });\n proc.on('close', () => {\n if (debug) {\n this.log.warn('что то пошло не так');\n }\n this.emitter.emit('close');\n setTimeout(() => {\n this.startGoProc();\n }, 100);\n });\n this.proc = proc;\n}\n"],"file":"startGoProc.js"}
\No newline at end of file