fix wildcard handling when field contains dot (#542)

* fix wildcard handling when field contains dot

* changelog
This commit is contained in:
John-Michael Faircloth 2024-04-15 16:42:20 -05:00 committed by GitHub
parent 66531b2752
commit 47dbc643a8
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 60 additions and 26 deletions

32
dist/index.js vendored
View file

@ -18999,7 +18999,7 @@ async function getSecrets(secretRequests, client, ignoreNotFound) {
body = JSON.parse(body);
if (selector == WILDCARD) {
if (selector == WILDCARD) {
let keys = body.data;
if (body.data["data"] != undefined) {
keys = keys.data;
@ -19007,20 +19007,26 @@ async function getSecrets(secretRequests, client, ignoreNotFound) {
for (let key in keys) {
let newRequest = Object.assign({},secretRequest);
newRequest.selector = key;
newRequest.selector = key;
if (secretRequest.selector === secretRequest.outputVarName) {
newRequest.outputVarName = key;
newRequest.envVarName = key;
}
else {
newRequest.envVarName = key;
} else {
newRequest.outputVarName = secretRequest.outputVarName+key;
newRequest.envVarName = secretRequest.envVarName+key;
newRequest.envVarName = secretRequest.envVarName+key;
}
newRequest.outputVarName = normalizeOutputKey(newRequest.outputVarName);
newRequest.envVarName = normalizeOutputKey(newRequest.envVarName,true);
newRequest.envVarName = normalizeOutputKey(newRequest.envVarName,true);
// JSONata field references containing reserved tokens should
// be enclosed in backticks
// https://docs.jsonata.org/simple#examples
if (key.includes(".")) {
const backtick = '`';
key = backtick.concat(key, backtick);
}
selector = key;
results = await selectAndAppendResults(
@ -19034,13 +19040,13 @@ async function getSecrets(secretRequests, client, ignoreNotFound) {
}
else {
results = await selectAndAppendResults(
selector,
body,
cachedResponse,
secretRequest,
selector,
body,
cachedResponse,
secretRequest,
results
);
}
}
}
return results;