mirror of
https://github.com/DeviceFarmer/stf.git
synced 2026-04-20 07:53:38 +02:00
Switch to bluebird and simplify gracefullyExit().
This commit is contained in:
@@ -2,7 +2,7 @@ var path = require('path')
|
||||
var fork = require('child_process').fork
|
||||
|
||||
var adb = require('adbkit')
|
||||
var Q = require('q')
|
||||
var Promise = require('bluebird')
|
||||
|
||||
var log = require('./util/logger').createLogger('provider')
|
||||
var client = adb.createClient()
|
||||
@@ -97,7 +97,7 @@ function maybeDisconnect(device) {
|
||||
}
|
||||
|
||||
function tryKillWorker(id) {
|
||||
var deferred = Q.defer(),
|
||||
var deferred = Promise.defer(),
|
||||
worker = workers[id]
|
||||
|
||||
function onExit() {
|
||||
@@ -115,7 +115,7 @@ function tryKillWorker(id) {
|
||||
function forceKillWorker(id) {
|
||||
log.warn('Force killing worker of device "%s"', id)
|
||||
|
||||
var deferred = Q.defer()
|
||||
var deferred = Promise.defer()
|
||||
, worker = workers[id]
|
||||
|
||||
function onExit() {
|
||||
@@ -143,15 +143,11 @@ function gracefullyKillWorker(id) {
|
||||
|
||||
function gracefullyExit() {
|
||||
log.info('Stopping all workers')
|
||||
Q.spawn(function* foo() {
|
||||
var ops = []
|
||||
for (var id in workers) {
|
||||
ops.push(gracefullyKillWorker(id))
|
||||
}
|
||||
yield Q.all(ops)
|
||||
log.info('All cleaned up')
|
||||
process.exit(0)
|
||||
})
|
||||
Promise.all(Object.keys(workers).map(gracefullyKillWorker))
|
||||
.done(function() {
|
||||
log.info('All cleaned up')
|
||||
process.exit(0)
|
||||
})
|
||||
}
|
||||
|
||||
process.on('SIGINT', function(e) {
|
||||
|
||||
Reference in New Issue
Block a user