1
1
'use strict' ;
2
- var archiver = require ( "../helpers/archiver" ) ;
3
- var zipUploader = require ( "../helpers/zipUpload" ) ;
4
- var build = require ( "../helpers/build" ) ;
5
- var logger = require ( "../helpers/logger" ) ;
6
- var config = require ( '../helpers/config' ) ;
7
- var capabilityHelper = require ( "../helpers/capabilityHelper" ) ;
8
- var fs = require ( 'fs' ) ;
9
- const Constants = require ( '../helpers/constants' ) ;
2
+ const fs = require ( 'fs' ) ;
3
+
4
+ const archiver = require ( "../helpers/archiver" ) ,
5
+ zipUploader = require ( "../helpers/zipUpload" ) ,
6
+ build = require ( "../helpers/build" ) ,
7
+ logger = require ( "../helpers/logger" ) . winstonLogger ,
8
+ config = require ( "../helpers/config" ) ,
9
+ capabilityHelper = require ( "../helpers/capabilityHelper" ) ,
10
+ Constants = require ( "../helpers/constants" ) ,
11
+ util = require ( "../helpers/util" ) ;
10
12
11
13
module . exports = function run ( args ) {
12
14
return runCypress ( args ) ;
@@ -15,48 +17,69 @@ module.exports = function run(args) {
15
17
function deleteZip ( ) {
16
18
fs . unlink ( config . fileName , function ( err ) {
17
19
if ( err ) {
18
- logger . log ( Constants . userMessages . ZIP_DELETE_FAILED ) ;
20
+ logger . info ( Constants . userMessages . ZIP_DELETE_FAILED ) ;
19
21
} else {
20
- logger . log ( Constants . userMessages . ZIP_DELETED ) ;
21
- }
22
+ logger . info ( Constants . userMessages . ZIP_DELETED ) ;
23
+ }
22
24
} ) ;
23
25
}
24
26
25
27
function runCypress ( args ) {
26
28
let bsConfigPath = process . cwd ( ) + args . cf ;
27
- logger . log ( `Reading config from ${ args . cf } ` ) ;
28
- var bsConfig = require ( bsConfigPath ) ;
29
-
30
- // Validate browserstack.json
31
- capabilityHelper . validate ( bsConfig ) . then ( function ( validated ) {
32
- logger . log ( validated ) ;
33
- // Archive the spec files
34
- archiver . archive ( bsConfig . run_settings , config . fileName ) . then ( function ( data ) {
35
- // Uploaded zip file
36
- zipUploader . zipUpload ( bsConfig , config . fileName ) . then ( function ( zip ) {
37
- // Create build
38
- build . createBuild ( bsConfig , zip ) . then ( function ( data ) {
39
- return ;
29
+
30
+ util . validateBstackJson ( bsConfigPath ) . then ( function ( bsConfig ) {
31
+ util . setUsageReportingFlag ( bsConfig , args . disableUsageReporting ) ;
32
+
33
+ // Validate browserstack.json values
34
+ capabilityHelper . validate ( bsConfig ) . then ( function ( validated ) {
35
+ logger . info ( validated ) ;
36
+
37
+ // Archive the spec files
38
+ archiver . archive ( bsConfig . run_settings , config . fileName ) . then ( function ( data ) {
39
+
40
+ // Uploaded zip file
41
+ zipUploader . zipUpload ( bsConfig , config . fileName ) . then ( function ( zip ) {
42
+
43
+ // Create build
44
+ build . createBuild ( bsConfig , zip ) . then ( function ( message ) {
45
+ logger . info ( message ) ;
46
+ util . sendUsageReport ( bsConfig , args , message , Constants . messageTypes . SUCCESS , null ) ;
47
+ return ;
48
+ } ) . catch ( function ( err ) {
49
+ // Build creation failed
50
+ logger . error ( err ) ;
51
+ util . sendUsageReport ( bsConfig , args , err , Constants . messageTypes . ERROR , 'build_failed' ) ;
52
+ } ) ;
40
53
} ) . catch ( function ( err ) {
41
- // Build creation failed
42
- logger . error ( Constants . userMessages . BUILD_FAILED )
54
+ // Zip Upload failed
55
+ logger . error ( err )
56
+ logger . error ( Constants . userMessages . ZIP_UPLOAD_FAILED )
57
+ util . sendUsageReport ( bsConfig , args , `${ err } \n${ Constants . userMessages . ZIP_UPLOAD_FAILED } ` , Constants . messageTypes . ERROR , 'zip_upload_failed' ) ;
58
+ } ) . finally ( function ( ) {
59
+ deleteZip ( ) ;
43
60
} ) ;
44
61
} ) . catch ( function ( err ) {
45
- // Zip Upload failed
46
- logger . error ( err )
47
- logger . error ( Constants . userMessages . ZIP_UPLOAD_FAILED )
48
- } ) . finally ( function ( ) {
49
- deleteZip ( ) ;
62
+ // Zipping failed
63
+ logger . error ( err ) ;
64
+ logger . error ( Constants . userMessages . FAILED_TO_ZIP ) ;
65
+ util . sendUsageReport ( bsConfig , args , `${ err } \n${ Constants . userMessages . FAILED_TO_ZIP } ` , Constants . messageTypes . ERROR , 'zip_creation_failed' ) ;
66
+ try {
67
+ deleteZip ( ) ;
68
+ } catch ( err ) {
69
+ util . sendUsageReport ( bsConfig , args , Constants . userMessages . ZIP_DELETE_FAILED , Constants . messageTypes . ERROR , 'zip_deletion_failed' ) ;
70
+ }
50
71
} ) ;
51
72
} ) . catch ( function ( err ) {
52
- // Zipping failed
53
- logger . error ( err )
54
- logger . error ( Constants . userMessages . FAILED_TO_ZIP )
55
- deleteZip ( ) ;
73
+ // browerstack.json is not valid
74
+ logger . error ( err ) ;
75
+ logger . error ( Constants . validationMessages . NOT_VALID ) ;
76
+
77
+ let error_code = util . getErrorCodeFromMsg ( err ) ;
78
+ util . sendUsageReport ( bsConfig , args , `${ err } \n${ Constants . validationMessages . NOT_VALID } ` , Constants . messageTypes . ERROR , error_code ) ;
56
79
} ) ;
57
80
} ) . catch ( function ( err ) {
58
- // browerstack.json is not valid
59
- logger . error ( err )
60
- logger . error ( Constants . validationMessages . NOT_VALID )
61
- } ) ;
81
+ logger . error ( err ) ;
82
+ util . setUsageReportingFlag ( null , args . disableUsageReporting ) ;
83
+ util . sendUsageReport ( null , args , err . message , Constants . messageTypes . ERROR , util . getErrorCodeFromErr ( err ) ) ;
84
+ } )
62
85
}
0 commit comments