5
0
Fork 0
mirror of https://github.com/hashicorp/vault-action.git synced 2025-11-09 08:06:55 +00:00

add * wildcard for fetch all secrets

This commit is contained in:
matryxxx02 2021-08-26 17:40:23 +02:00
parent c2dbbf64ea
commit 5ab26dde94
4 changed files with 13 additions and 14 deletions

12
dist/index.js vendored
View file

@ -10895,7 +10895,9 @@ async function getSecrets(secretRequests, client) {
}
let value;
if(selector !== "*"){
if(selector === "*"){
value = body.data["data"];
} else {
if (!selector.match(/.*[\.].*/)) {
selector = '"' + selector + '"'
}
@ -10905,8 +10907,6 @@ async function getSecrets(secretRequests, client) {
selector = "data." + selector
}
value = selectData(body, selector);
} else {
value = body.data["data"];
}
results.push({
@ -14690,8 +14690,8 @@ async function exportSecrets() {
addMask(value)
core.exportVariable(request.envVarName, value);
}
//core.setOutput(request.outputVarName, `${value}`);
//core.debug(`✔ ${request.path} => outputs.${request.outputVarName}${exportEnv ? ` | env.${request.envVarName}` : ''}`);
core.setOutput(request.outputVarName, typeof value === "object" ? value : `${value}`);
core.debug(`${request.path} => outputs.${request.outputVarName}${exportEnv ? ` | env.${request.envVarName}` : ''}`);
}
};
@ -14743,7 +14743,7 @@ function parseSecretsInput(secretsInput) {
if (selectorQuoted === "*") {
output.push({
path,
envVarName: "",
envVarName: "*",
outputVarName: "",
selector: "*"
});

View file

@ -97,8 +97,8 @@ async function exportSecrets() {
addMask(value)
core.exportVariable(request.envVarName, value);
}
//core.setOutput(request.outputVarName, `${value}`);
//core.debug(`✔ ${request.path} => outputs.${request.outputVarName}${exportEnv ? ` | env.${request.envVarName}` : ''}`);
core.setOutput(request.outputVarName, typeof value === "object" ? value : `${value}`);
core.debug(`${request.path} => outputs.${request.outputVarName}${exportEnv ? ` | env.${request.envVarName}` : ''}`);
}
};
@ -150,7 +150,7 @@ function parseSecretsInput(secretsInput) {
if (selectorQuoted === "*") {
output.push({
path,
envVarName: "",
envVarName: "*",
outputVarName: "",
selector: "*"
});

View file

@ -27,12 +27,11 @@ describe('parseSecretsInput', () => {
it('parses all secrets', () => {
const output = parseSecretsInput('test *');
console.log(output);
expect(output).toContainEqual({
path: 'test',
selector: '*',
outputVarName: '',
envVarName: ''
envVarName: '*'
});
});

View file

@ -40,7 +40,9 @@ async function getSecrets(secretRequests, client) {
}
let value;
if(selector !== "*"){
if(selector === "*"){
value = body.data["data"];
} else {
if (!selector.match(/.*[\.].*/)) {
selector = '"' + selector + '"'
}
@ -50,8 +52,6 @@ async function getSecrets(secretRequests, client) {
selector = "data." + selector
}
value = selectData(body, selector);
} else {
value = body.data["data"];
}
results.push({