@@ -128,9 +128,11 @@ async function updateMicroservice(microserviceUuid, microserviceData, user, isCL
128128 userId : user . id
129129 } ;
130130
131+ const config = _validateMicroserviceConfig ( microserviceData . config ) ;
132+
131133 const microserviceToUpdate = {
132134 name : microserviceData . name ,
133- config : microserviceData . config ,
135+ config : config ,
134136 rebuild : microserviceData . rebuild ,
135137 iofogUuid : microserviceData . iofogUuid ,
136138 rootHostAccess : microserviceData . rootHostAccess ,
@@ -481,12 +483,20 @@ async function listVolumeMappings(microserviceUuid, user, isCLI, transaction) {
481483 return await VolumeMappingManager . findAll ( volumeMappingWhere , transaction ) ;
482484}
483485
486+ // this function works with escape and unescape config, in case of unescaped config, the first split will not work,
487+ // but the second will work
488+ function _validateMicroserviceConfig ( config ) {
489+ return config . split ( '\\"' ) . join ( '"' ) . split ( '"' ) . join ( '\"' ) ;
490+ }
491+
484492async function _createMicroservice ( microserviceData , user , isCLI , transaction ) {
485493
494+ const config = _validateMicroserviceConfig ( microserviceData . config ) ;
495+
486496 let newMicroservice = {
487497 uuid : AppHelper . generateRandomString ( 32 ) ,
488498 name : microserviceData . name ,
489- config : microserviceData . config ,
499+ config : config ,
490500 catalogItemId : microserviceData . catalogItemId ,
491501 flowId : microserviceData . flowId ,
492502 iofogUuid : microserviceData . iofogUuid ,
0 commit comments