From af4fbe2bdf8a602b23d19f9624c103f2664ec780 Mon Sep 17 00:00:00 2001 From: Geovane A Carvalho Date: Fri, 29 Oct 2021 21:27:57 -0300 Subject: [PATCH 1/2] Script to convert environment json. --- convertEnvJsonFile.js | 56 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 convertEnvJsonFile.js diff --git a/convertEnvJsonFile.js b/convertEnvJsonFile.js new file mode 100644 index 0000000..adc97f1 --- /dev/null +++ b/convertEnvJsonFile.js @@ -0,0 +1,56 @@ +const fs = require("fs"); +const { + v4: uuidv4 +} = require('uuid') + +const inputFileName = process.argv.length > 2 ? process.argv[2] : undefined; +if (inputFileName === undefined) { + console.error("Error: Input file not provided!!! Exiting."); + process.exit(1); +} + +function flatObject(parentKey, jsonObject) { + var firsLevelKeys = Object.keys(jsonObject); + + var flatted = []; + firsLevelKeys.forEach(key => { + if (typeof jsonObject[key] === 'string' || jsonObject[key] instanceof String) { + flatted.push({ + "key": `${parentKey.toUpperCase()}${key.toUpperCase()}`, + "value": jsonObject[key], + "enabled": true + }); + } else { + flatted = flatted.concat(flatObject(`${key}_`, jsonObject[key])); + } + }); + + return flatted +} + +function generateMaps(insomniaEnvVars) { + var parentChildrenMap = new Map(); + var flatMap = new Map(); + + return flatObject('', insomniaEnvVars) +} + +function transformData(environmentName, inputDataString) { + + var inputData = JSON.parse(inputDataString); + var outputData = { + "id": uuidv4(), + "name": environmentName, + "values": generateMaps(inputData), + "_postman_variable_scope": "environment", + "_postman_exported_at": new Date().toISOString(), + "_postman_exported_using": "Postman/8.12.1" + }; + + return JSON.stringify(outputData); +} + +const environmentName = inputFileName.split('.')[0]; +const data = fs.readFileSync(inputFileName, "utf-8"); +const newData = transformData(environmentName, data); +fs.writeFileSync(`${environmentName}.postman_environment.json`, newData); \ No newline at end of file From 2dc007e963c0807793fe73012f93da4b4c5fc757 Mon Sep 17 00:00:00 2001 From: gacalves Date: Fri, 29 Oct 2021 21:51:31 -0300 Subject: [PATCH 2/2] Removing unnecessary code. --- convertEnvJsonFile.js | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/convertEnvJsonFile.js b/convertEnvJsonFile.js index adc97f1..32e2c5b 100644 --- a/convertEnvJsonFile.js +++ b/convertEnvJsonFile.js @@ -25,14 +25,11 @@ function flatObject(parentKey, jsonObject) { } }); - return flatted + return flatted; } function generateMaps(insomniaEnvVars) { - var parentChildrenMap = new Map(); - var flatMap = new Map(); - - return flatObject('', insomniaEnvVars) + return flatObject('', insomniaEnvVars); } function transformData(environmentName, inputDataString) {