File tree Expand file tree Collapse file tree 2 files changed +9
-2
lines changed
Expand file tree Collapse file tree 2 files changed +9
-2
lines changed Original file line number Diff line number Diff line change 77const ObjectID = require ( 'mongodb' ) . ObjectID ;
88const Parsers = require ( `./parsers/` ) ;
99const DefaultParser = require ( `./parsers/Default` ) ;
10- const { logger } = require ( './Utils' ) ;
10+ const { logger, removeAnsiCode } = require ( './Utils' ) ;
1111const Utils = require ( './parsers/Utils' ) ;
1212
1313class DataManager {
@@ -22,6 +22,7 @@ class DataManager {
2222 }
2323
2424 async parseOutput ( buildName , output ) {
25+ output = removeAnsiCode ( output ) ;
2526 const parserTypes = await Promise . all (
2627 Object . keys ( Parsers ) . map ( async ( type ) => {
2728 if ( Parsers [ type ] . canParse ( buildName , output ) ) {
Original file line number Diff line number Diff line change @@ -28,4 +28,10 @@ const addCredential = (credentails, url) => {
2828 return url ;
2929} ;
3030
31- module . exports = { logger, addCredential } ;
31+ // remove ANSI escape code in Jenkins raw output
32+ // remove everything between \x1B[8m and \x1B[0m
33+ const removeAnsiCode = ( output ) => {
34+ return output . replace ( / \x1B \[ 8 m [ \s \S ] * ?\x1B \[ 0 m / g, '' ) ;
35+ } ;
36+
37+ module . exports = { logger, addCredential, removeAnsiCode } ;
You can’t perform that action at this time.
0 commit comments