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