@@ -292,7 +292,7 @@ hostAPI.get('/images', {
292
292
title : 'List host images' ,
293
293
description : 'List the Docker images available on this host.' ,
294
294
295
- handler : ( request , response ) => {
295
+ handler : async ( request , response ) => {
296
296
const { user } = request ;
297
297
if ( ! users . isAdmin ( user ) ) {
298
298
response . statusCode = 404 ; // Not Found
@@ -307,15 +307,15 @@ hostAPI.get('/images', {
307
307
return ;
308
308
}
309
309
310
- docker . listImages ( { host : hostname } , ( error , images ) => {
311
- if ( error ) {
312
- log ( '[fail] host images' , error ) ;
313
- response . statusCode = 503 ; // Service Unavailable
314
- response . json ( { error : 'Host unreachable' } , null , 2 ) ;
315
- return ;
316
- }
310
+ try {
311
+ const images = await docker . listImages ( { host : hostname } ) ;
312
+
317
313
response . json ( images , null , 2 ) ;
318
- } ) ;
314
+ } catch ( error ) {
315
+ log ( '[fail] host images' , error ) ;
316
+ response . statusCode = 503 ; // Service Unavailable
317
+ response . json ( { error : 'Host unreachable' } , null , 2 ) ;
318
+ }
319
319
} ,
320
320
321
321
examples : [ ] ,
@@ -324,7 +324,7 @@ hostAPI.get('/images', {
324
324
hostAPI . get ( '/version' , {
325
325
title : 'Show host version' ,
326
326
327
- handler : ( request , response ) => {
327
+ handler : async ( request , response ) => {
328
328
const { user } = request ;
329
329
if ( ! users . isAdmin ( user ) ) {
330
330
response . statusCode = 404 ; // Not Found
@@ -339,15 +339,14 @@ hostAPI.get('/version', {
339
339
return ;
340
340
}
341
341
342
- docker . version ( { host : hostname } , ( error , version ) => {
343
- if ( error ) {
344
- log ( '[fail] host version' , error ) ;
345
- response . statusCode = 503 ; // Service Unavailable
346
- response . json ( { error : 'Host unreachable' } , null , 2 ) ;
347
- return ;
348
- }
342
+ try {
343
+ const version = await docker . version ( { host : hostname } ) ;
349
344
response . json ( { docker : version } , null , 2 ) ;
350
- } ) ;
345
+ } catch ( error ) {
346
+ log ( '[fail] host version' , error ) ;
347
+ response . statusCode = 503 ; // Service Unavailable
348
+ response . json ( { error : 'Host unreachable' } , null , 2 ) ;
349
+ }
351
350
} ,
352
351
353
352
examples : [ {
@@ -375,7 +374,7 @@ containersAPI.get({
375
374
title : 'List containers' ,
376
375
description : 'List all Docker containers on this host.' ,
377
376
378
- handler : ( request , response ) => {
377
+ handler : async ( request , response ) => {
379
378
const { user } = request ;
380
379
if ( ! users . isAdmin ( user ) ) {
381
380
response . statusCode = 404 ; // Not Found
@@ -390,15 +389,14 @@ containersAPI.get({
390
389
return ;
391
390
}
392
391
393
- docker . listContainers ( { host : hostname } , ( error , containers ) => {
394
- if ( error ) {
395
- log ( '[fail] host containers' , error ) ;
396
- response . statusCode = 503 ; // Service Unavailable
397
- response . json ( { error : 'Host unreachable' } , null , 2 ) ;
398
- return ;
399
- }
392
+ try {
393
+ const containers = await docker . listContainers ( { host : hostname } ) ;
400
394
response . json ( containers , null , 2 ) ;
401
- } ) ;
395
+ } catch ( error ) {
396
+ log ( '[fail] host containers' , error ) ;
397
+ response . statusCode = 503 ; // Service Unavailable
398
+ response . json ( { error : 'Host unreachable' } , null , 2 ) ;
399
+ }
402
400
} ,
403
401
404
402
examples : [ ] ,
@@ -407,7 +405,7 @@ containersAPI.get({
407
405
containersAPI . put ( {
408
406
title : 'Create a container' ,
409
407
410
- handler ( request , response ) {
408
+ async handler ( request , response ) {
411
409
const { user } = request ;
412
410
if ( ! user ) {
413
411
response . statusCode = 403 ; // Forbidden
@@ -422,17 +420,15 @@ containersAPI.put({
422
420
return ;
423
421
}
424
422
425
- machines . spawn ( user , projectId , ( error , machine ) => {
426
- if ( error ) {
427
- log ( '[fail] could not spawn machine' , error ) ;
428
- response . statusCode = 500 ; // Internal Server Error
429
- response . json ( { error : 'Could not create new container' } , null , 2 ) ;
430
- return ;
431
- }
432
-
423
+ try {
424
+ const machine = await machines . spawn ( user , projectId ) ;
433
425
response . statusCode = 201 ; // Created
434
426
response . json ( { container : machine . docker . container } , null , 2 ) ;
435
- } ) ;
427
+ } catch ( error ) {
428
+ log ( '[fail] could not spawn machine' , error ) ;
429
+ response . statusCode = 500 ; // Internal Server Error
430
+ response . json ( { error : 'Could not create new container' } , null , 2 ) ;
431
+ }
436
432
} ,
437
433
438
434
examples : [ ]
@@ -581,10 +577,10 @@ containerAPI.delete({
581
577
containerAPI . get ( '/changes' , {
582
578
title : 'List changed files in a container' ,
583
579
description :
584
- 'List all files that were modified (Kind: 0), added (1) or deleted (2) ' +
585
- 'in a given Docker container.' ,
580
+ 'List all files that were modified (Kind: 0), added (1) or deleted (2) ' +
581
+ 'in a given Docker container.' ,
586
582
587
- handler : ( request , response ) => {
583
+ handler : async ( request , response ) => {
588
584
const { user } = request ;
589
585
if ( ! user ) {
590
586
response . statusCode = 403 ; // Forbidden
@@ -609,16 +605,14 @@ containerAPI.get('/changes', {
609
605
}
610
606
611
607
const parameters = { host : hostname , container } ;
612
- docker . listChangedFilesInContainer ( parameters , ( error , changedFiles ) => {
613
- if ( error ) {
614
- log ( '[fail] container changes' , error ) ;
615
- response . statusCode = 503 ; // Service Unavailable
616
- response . json ( { error : 'Host unreachable' } , null , 2 ) ;
617
- return ;
618
- }
619
-
608
+ try {
609
+ const changedFiles = await docker . listChangedFilesInContainer ( parameters ) ;
620
610
response . json ( changedFiles , null , 2 ) ;
621
- } ) ;
611
+ } catch ( error ) {
612
+ log ( '[fail] container changes' , error ) ;
613
+ response . statusCode = 503 ; // Service Unavailable
614
+ response . json ( { error : 'Host unreachable' } , null , 2 ) ;
615
+ }
622
616
} ,
623
617
624
618
examples : [ {
0 commit comments