Skip to content

Commit

Permalink
Merge pull request #100 from shikshalokam/master
Browse files Browse the repository at this point in the history
envVariable function change
  • Loading branch information
aks30 authored Sep 6, 2022
2 parents f0d38ec + 8b7b434 commit cccd737
Showing 1 changed file with 51 additions and 37 deletions.
88 changes: 51 additions & 37 deletions envVariables.js
Original file line number Diff line number Diff line change
Expand Up @@ -48,53 +48,66 @@ module.exports = function() {
Object.keys(enviromentVariables).forEach(eachEnvironmentVariable=>{

let tableObj = {
[eachEnvironmentVariable] : ""
[eachEnvironmentVariable] : "PASSED"
};

let keyCheckPass = true;


if(
enviromentVariables[eachEnvironmentVariable].requiredIf
&& process.env[enviromentVariables[eachEnvironmentVariable].requiredIf.key]
&& process.env[enviromentVariables[eachEnvironmentVariable].requiredIf.key] === enviromentVariables[eachEnvironmentVariable].requiredIf.value
) {
tableObj[eachEnvironmentVariable].optional = false;
if(enviromentVariables[eachEnvironmentVariable].optional === true
&& enviromentVariables[eachEnvironmentVariable].requiredIf
&& enviromentVariables[eachEnvironmentVariable].requiredIf.key
&& enviromentVariables[eachEnvironmentVariable].requiredIf.key != ""
&& enviromentVariables[eachEnvironmentVariable].requiredIf.operator
&& validRequiredIfOperators.includes(enviromentVariables[eachEnvironmentVariable].requiredIf.operator)
&& enviromentVariables[eachEnvironmentVariable].requiredIf.value
&& enviromentVariables[eachEnvironmentVariable].requiredIf.value != "") {
switch (enviromentVariables[eachEnvironmentVariable].requiredIf.operator) {
case "EQUALS":
if(process.env[enviromentVariables[eachEnvironmentVariable].requiredIf.key] === enviromentVariables[eachEnvironmentVariable].requiredIf.value) {
enviromentVariables[eachEnvironmentVariable].optional = false;
}
break;
case "NOT_EQUALS":
if(process.env[enviromentVariables[eachEnvironmentVariable].requiredIf.key] != enviromentVariables[eachEnvironmentVariable].requiredIf.value) {
enviromentVariables[eachEnvironmentVariable].optional = false;
}
break;
default:
break;
}
}

if(
!(process.env[eachEnvironmentVariable]) &&
!(enviromentVariables[eachEnvironmentVariable].optional)
) {

success = false;

if(
enviromentVariables[eachEnvironmentVariable].default &&
enviromentVariables[eachEnvironmentVariable].default != ""
) {
process.env[eachEnvironmentVariable] =
enviromentVariables[eachEnvironmentVariable].default;
if(enviromentVariables[eachEnvironmentVariable].optional === false) {
if(!(process.env[eachEnvironmentVariable])
|| process.env[eachEnvironmentVariable] == "") {
success = false;
keyCheckPass = false;
} else if (enviromentVariables[eachEnvironmentVariable].possibleValues
&& Array.isArray(enviromentVariables[eachEnvironmentVariable].possibleValues)
&& enviromentVariables[eachEnvironmentVariable].possibleValues.length > 0) {
if(!enviromentVariables[eachEnvironmentVariable].possibleValues.includes(process.env[eachEnvironmentVariable])) {
success = false;
keyCheckPass = false;
enviromentVariables[eachEnvironmentVariable].message += ` Valid values - ${enviromentVariables[eachEnvironmentVariable].possibleValues.join(", ")}`
}
}
}

if((!(process.env[eachEnvironmentVariable])
|| process.env[eachEnvironmentVariable] == "")
&& enviromentVariables[eachEnvironmentVariable].default
&& enviromentVariables[eachEnvironmentVariable].default != "") {
process.env[eachEnvironmentVariable] = enviromentVariables[eachEnvironmentVariable].default;
}

if(
enviromentVariables[eachEnvironmentVariable] &&
enviromentVariables[eachEnvironmentVariable].message !== ""
) {
if(!keyCheckPass) {
if(enviromentVariables[eachEnvironmentVariable].message !== "") {
tableObj[eachEnvironmentVariable] =
enviromentVariables[eachEnvironmentVariable].message;
} else {
tableObj[eachEnvironmentVariable] = "required";
tableObj[eachEnvironmentVariable] = `FAILED - ${eachEnvironmentVariable} is required`;
}

} else {

tableObj[eachEnvironmentVariable] = "Passed";

if(
enviromentVariables[eachEnvironmentVariable].possibleValues &&
!enviromentVariables[eachEnvironmentVariable].possibleValues.includes(process.env[eachEnvironmentVariable])
) {
tableObj[eachEnvironmentVariable] = ` Valid values - ${enviromentVariables[eachEnvironmentVariable].possibleValues.join(", ")}`;
}

}

tableData.push(tableObj);
Expand All @@ -108,3 +121,4 @@ module.exports = function() {
}



0 comments on commit cccd737

Please sign in to comment.