import groovy.json.JsonBuilder import groovy.json.JsonSlurper def content = """ { "Baseline": { "deploymentType":"HA", "operationalPolicy":"STANDARD", "releaseVersion":"11.13.18.02.0", "payloadXMLPath":"/net/slc03wli/scratch/aime/fa_prov/LCM03/create/ERP_S0_TASpayload.xml", "faOVMDeployZip":"", "snapshotName":"MAIN_STARTER_FAOVM_171213.2120S_snap", "MCLITE_TOOL_LOC":"faovmfarmrel13E2EM7", "FALCMCMDTOOLS_LOC":"/net/slcnas699/export/fa_ovm_farm_mcollective/SaasOVMPatchingAutomation/M7DevDrop/e2e-rel-generic.zip", "SIZE":"small", "P2T_SNAPSHOT_ZIP_LOC":"/net/slcnas699/export/fa_ovm_farm_mcollective/SaasOVMPatchingAutomation/REL13/P2T_SNAPSHOT_ZIP/p25642845_1112100_Fusion_Linux-x86-64.zip", "GRP_SCRIPT_ZIP_LOC":"/net/slcnas699/export/fa_ovm_farm_mcollective/SaasOVMPatchingAutomation/REL13/GRP/p25645794_1112100_Fusion_Linux-x86-64.zip", "SMARTCLONE_BIN_ZIP_LOCATION":"/net/slcnas699/export/fa_ovm_farm_mcollective/SaasOVMPatchingAutomation/SmartCloneLat/preupg/ruplite-smartClone.zip", "OJVM_ZIP_LOC":"/net/slcnas699/export/fa_ovm_farm_mcollective/SaasOVMPatchingAutomation/OJVM/p23341410_1112100_Fusion_GENERIC.zip", "FEEDBACK_UTIL_ZIP":"", "HC_OVERRIDE_21548464":"/net/slcnas699/export/fa_ovm_farm_mcollective/SaasOVMPatchingAutomation/HC_OVERRIDE/p21548464_1113000_Fusion_GENERIC.zip", "HC_OVERRIDE_22346904":"/net/slcnas699/export/fa_ovm_farm_mcollective/SaasOVMPatchingAutomation/HC_OVERRIDE/p22346904_1111110_Fusion_GENERIC.zip", "SHARED_LOCATION":"/fsnadmin/LCMQE_AUTOMATION/e2e/M7DevDrop_PIPELINE", "OMS_PWD":"", "P4FA_LOCATION":"/fsnadmin/P4FA-PIPELINE/PATCHES4FA_11.13.17.11.0PATCH_PLATFORMS.rdd/171101.1836.S/patches4fa/dist", "DEBUG": "true", "FAINTEG_LABEL": "FAINTEG_MAIN_PLATFORMS_171213.2120", "L2_DEPLOYER_TEMPLATE_PATH":"slcnas699.us.oracle.com:/export/sdiqa/MAIN_STARTER_FAOVM_171213.2120S", "L3_DEPLOYER_TEMPLATE_PATH":"slcnas645.us.oracle.com:/export/fa_templates/MAIN_STARTER_FAOVM_171213.2120S", "L3_POOL": "DR_POOL", "L3_TAG": "L3_PROV_PROD", "FAOVM_ARTIFACT":"oracle-ovmautomation-all-11.13.17.11.1058-MAIN.zip", "DAYN_ARTIFACT":"oracle-ovmautomation-all-dayNtools-11.13.17.11.1525-11.13.17.11.1.zip" } } """ def slurped = new JsonSlurper().parseText(content) def builder = new JsonBuilder(slurped) String input = "Baseline:releaseVersion=11.13.18.09.0,Baseline:SIZE=large" def props = input.tokenize( ',' ) for (String prop : props) { def (key, value) = prop.tokenize( '=' ) def keylist = key.tokenize( ':' ) def n = keylist.size(); if(n == 1) { builder.content.put(keylist[0],value) } else if (n == 2) { if(builder.content.containsKey(keylist[0])) { builder.content.get(keylist[0]).put(keylist[1],value) } else { def mystr = """{ "${keylist[1]}" : "${value}" }""" def myslurp = new JsonSlurper().parseText(mystr) def mybuild = new JsonBuilder(myslurp) builder.content.put(keylist[0],mybuild) } } } println(builder.toPrettyString())
We use cookies to provide and improve our services. By using our site, you consent to our Cookies Policy. Accept Learn more