11'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" ) ;
1012
1113module . exports = function run ( args ) {
1214 return runCypress ( args ) ;
@@ -15,48 +17,69 @@ module.exports = function run(args) {
1517function deleteZip ( ) {
1618 fs . unlink ( config . fileName , function ( err ) {
1719 if ( err ) {
18- logger . log ( Constants . userMessages . ZIP_DELETE_FAILED ) ;
20+ logger . info ( Constants . userMessages . ZIP_DELETE_FAILED ) ;
1921 } else {
20- logger . log ( Constants . userMessages . ZIP_DELETED ) ;
21- }
22+ logger . info ( Constants . userMessages . ZIP_DELETED ) ;
23+ }
2224 } ) ;
2325}
2426
2527function runCypress ( args ) {
2628 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+ } ) ;
4053 } ) . 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 ( ) ;
4360 } ) ;
4461 } ) . 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+ }
5071 } ) ;
5172 } ) . 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 ) ;
5679 } ) ;
5780 } ) . 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+ } )
6285}
0 commit comments