@@ -19,93 +19,94 @@ module.exports = function info(args, rawArgs) {
19
19
// accept the access key from command line if provided
20
20
utils . setAccessKey ( bsConfig , args ) ;
21
21
22
- let initDetails = await getInitialDetails ( bsConfig , args , rawArgs ) ;
23
-
24
- let buildReportData = {
25
- 'user_id' : initDetails . user_id
26
- } ;
27
-
28
- utils . setUsageReportingFlag ( bsConfig , args . disableUsageReporting ) ;
29
-
30
- // set cypress config filename
31
- utils . setCypressConfigFilename ( bsConfig , args ) ;
32
-
33
- let buildId = args . _ [ 1 ] ;
34
-
35
- let options = {
36
- url : config . buildUrl + buildId ,
37
- auth : {
38
- user : bsConfig . auth . username ,
39
- password : bsConfig . auth . access_key ,
40
- } ,
41
- headers : {
42
- 'User-Agent' : utils . getUserAgent ( ) ,
43
- } ,
44
- } ;
45
-
46
- request . get ( options , function ( err , resp , body ) {
47
- let message = null ;
48
- let messageType = null ;
49
- let errorCode = null ;
50
-
51
- if ( err ) {
52
- message = Constants . userMessages . BUILD_INFO_FAILED ;
53
- messageType = Constants . messageTypes . ERROR ;
54
- errorCode = 'api_failed_build_info' ;
55
-
56
- logger . info ( message ) ;
57
- logger . error ( utils . formatRequest ( err , resp , body ) ) ;
58
- } else {
59
- let build = null ;
60
- try {
61
- build = JSON . parse ( body ) ;
62
- } catch ( error ) {
63
- build = null ;
64
- }
65
-
66
- if ( resp . statusCode == 299 ) {
67
- messageType = Constants . messageTypes . INFO ;
68
- errorCode = 'api_deprecated' ;
22
+ getInitialDetails ( bsConfig , args , rawArgs ) . then ( ( initDetails ) => {
23
+ let buildReportData = {
24
+ user_id : initDetails . user_id
25
+ }
69
26
70
- if ( build ) {
71
- message = build . message ;
72
- logger . info ( message ) ;
73
- } else {
74
- message = Constants . userMessages . API_DEPRECATED ;
75
- logger . info ( message ) ;
76
- }
77
- logger . info ( utils . formatRequest ( err , resp , body ) ) ;
78
- } else if ( resp . statusCode != 200 ) {
27
+ utils . setUsageReportingFlag ( bsConfig , args . disableUsageReporting ) ;
28
+
29
+ // set cypress config filename
30
+ utils . setCypressConfigFilename ( bsConfig , args ) ;
31
+
32
+ let buildId = args . _ [ 1 ] ;
33
+
34
+ let options = {
35
+ url : config . buildUrl + buildId ,
36
+ auth : {
37
+ user : bsConfig . auth . username ,
38
+ password : bsConfig . auth . access_key ,
39
+ } ,
40
+ headers : {
41
+ 'User-Agent' : utils . getUserAgent ( ) ,
42
+ } ,
43
+ } ;
44
+ request . get ( options , function ( err , resp , body ) {
45
+ let message = null ;
46
+ let messageType = null ;
47
+ let errorCode = null ;
48
+
49
+ if ( err ) {
50
+ message = Constants . userMessages . BUILD_INFO_FAILED ;
79
51
messageType = Constants . messageTypes . ERROR ;
80
52
errorCode = 'api_failed_build_info' ;
81
-
82
- if ( build ) {
83
- message = `${
84
- Constants . userMessages . BUILD_INFO_FAILED
85
- } with error: \n${ JSON . stringify ( build , null , 2 ) } `;
86
- logger . error ( message ) ;
87
- if ( build . message === 'Unauthorized' ) errorCode = 'api_auth_failed' ;
88
- } else {
89
- message = Constants . userMessages . BUILD_INFO_FAILED ;
90
- logger . error ( message ) ;
91
- }
53
+
54
+ logger . info ( message ) ;
92
55
logger . error ( utils . formatRequest ( err , resp , body ) ) ;
93
56
} else {
94
- messageType = Constants . messageTypes . SUCCESS ;
95
- message = `Build info for build id: \n ${ JSON . stringify (
96
- build ,
97
- null ,
98
- 2
99
- ) } `;
100
- logger . info ( message ) ;
57
+ let build = null ;
58
+ try {
59
+ build = JSON . parse ( body ) ;
60
+ } catch ( error ) {
61
+ build = null ;
62
+ }
63
+
64
+ if ( resp . statusCode == 299 ) {
65
+ messageType = Constants . messageTypes . INFO ;
66
+ errorCode = 'api_deprecated' ;
67
+
68
+ if ( build ) {
69
+ message = build . message ;
70
+ logger . info ( message ) ;
71
+ } else {
72
+ message = Constants . userMessages . API_DEPRECATED ;
73
+ logger . info ( message ) ;
74
+ }
75
+ logger . info ( utils . formatRequest ( err , resp , body ) ) ;
76
+ } else if ( resp . statusCode != 200 ) {
77
+ messageType = Constants . messageTypes . ERROR ;
78
+ errorCode = 'api_failed_build_info' ;
79
+
80
+ if ( build ) {
81
+ message = `${
82
+ Constants . userMessages . BUILD_INFO_FAILED
83
+ } with error: \n${ JSON . stringify ( build , null , 2 ) } `;
84
+ logger . error ( message ) ;
85
+ if ( build . message === 'Unauthorized' ) errorCode = 'api_auth_failed' ;
86
+ } else {
87
+ message = Constants . userMessages . BUILD_INFO_FAILED ;
88
+ logger . error ( message ) ;
89
+ }
90
+ logger . error ( utils . formatRequest ( err , resp , body ) ) ;
91
+ } else {
92
+ messageType = Constants . messageTypes . SUCCESS ;
93
+ message = `Build info for build id: \n ${ JSON . stringify (
94
+ build ,
95
+ null ,
96
+ 2
97
+ ) } `;
98
+ logger . info ( message ) ;
99
+ }
101
100
}
102
- }
103
- utils . sendUsageReport ( bsConfig , args , message , messageType , errorCode , buildReportData , rawArgs ) ;
101
+ utils . sendUsageReport ( bsConfig , args , message , messageType , errorCode , buildReportData , rawArgs ) ;
102
+ } ) ;
103
+ } ) . catch ( ( err ) => {
104
+ process . exitCode = Constants . ERROR_EXIT_CODE ;
104
105
} ) ;
105
106
} ) . catch ( function ( err ) {
106
107
logger . error ( err ) ;
107
108
utils . setUsageReportingFlag ( null , args . disableUsageReporting ) ;
108
- utils . sendUsageReport ( null , args , err . message , Constants . messageTypes . ERROR , utils . getErrorCodeFromErr ( err ) , buildReportData , rawArgs ) ;
109
+ utils . sendUsageReport ( null , args , err . message , Constants . messageTypes . ERROR , utils . getErrorCodeFromErr ( err ) , null , rawArgs ) ;
109
110
process . exitCode = Constants . ERROR_EXIT_CODE ;
110
111
} )
111
112
}
0 commit comments