1
0
Fork 0
mirror of https://github.com/openstf/stf synced 2025-10-03 17:59:28 +02:00

Allow provider to push.

This commit is contained in:
Simo Kinnunen 2014-01-20 12:01:33 +09:00
parent 5c923205db
commit f60cf2008b
2 changed files with 22 additions and 12 deletions

View file

@ -9,19 +9,17 @@ program
program program
.command('provider [serial..]') .command('provider [serial..]')
.description('start provider') .description('start provider')
.option('-s, --connect-dev-sub <endpoint>', 'device sub endpoint', .option('-s, --connect-sub <endpoint>', 'sub endpoint', cliargs.list)
cliargs.list) .option('-p, --connect-push <endpoint>', 'push endpoint', cliargs.list)
.option('-p, --connect-dev-push <endpoint>', 'device push endpoint',
cliargs.list)
.action(function() { .action(function() {
var serials = cliargs.allUnknownArgs(arguments) var serials = cliargs.allUnknownArgs(arguments)
, options = cliargs.lastArg(arguments) , options = cliargs.lastArg(arguments)
if (!options.connectDevSub) { if (!options.connectSub) {
this.missingArgument('--connect-dev-sub') this.missingArgument('--connect-sub')
} }
if (!options.connectDevPush) { if (!options.connectPush) {
this.missingArgument('--connect-dev-push') this.missingArgument('--connect-push')
} }
require('./roles/provider')({ require('./roles/provider')({
@ -32,10 +30,14 @@ program
var fork = require('child_process').fork var fork = require('child_process').fork
return fork(__filename, [ return fork(__filename, [
'device', device.id 'device', device.id
, '--connect-sub', options.connectDevSub.join(',') , '--connect-sub', options.connectSub.join(',')
, '--connect-push', options.connectDevPush.join(',') , '--connect-push', options.connectPush.join(',')
]) ])
} }
, endpoints: {
sub: options.connectSub
, push: options.connectPush
}
}) })
}) })
@ -178,8 +180,8 @@ program
// provider // provider
fork(__filename, [ fork(__filename, [
'provider' 'provider'
, '--connect-dev-sub', options.bindDevPub , '--connect-sub', options.bindDevPub
, '--connect-dev-push', options.bindDevPull , '--connect-push', options.bindDevPull
].concat(cliargs.allUnknownArgs(arguments))) ].concat(cliargs.allUnknownArgs(arguments)))
}) })

View file

@ -1,11 +1,19 @@
var adb = require('adbkit') var adb = require('adbkit')
var Promise = require('bluebird') var Promise = require('bluebird')
var zmq = require('zmq')
module.exports = function(options) { module.exports = function(options) {
var log = require('../util/logger').createLogger('provider') var log = require('../util/logger').createLogger('provider')
var client = Promise.promisifyAll(adb.createClient()) var client = Promise.promisifyAll(adb.createClient())
var workers = Object.create(null) var workers = Object.create(null)
// Output
var push = zmq.socket('push')
options.endpoints.push.forEach(function(endpoint) {
log.info('Sending output to %s', endpoint)
push.connect(endpoint)
})
client.trackDevicesAsync() client.trackDevicesAsync()
.then(function(tracker) { .then(function(tracker) {
log.info('Tracking devices') log.info('Tracking devices')