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:
parent
c2dbbf64ea
commit
5ab26dde94
4 changed files with 13 additions and 14 deletions
12
dist/index.js
vendored
12
dist/index.js
vendored
|
|
@ -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: "*"
|
||||
});
|
||||
|
|
|
|||
|
|
@ -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: "*"
|
||||
});
|
||||
|
|
|
|||
|
|
@ -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: '*'
|
||||
});
|
||||
});
|
||||
|
||||
|
|
|
|||
|
|
@ -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({
|
||||
|
|
|
|||
Loading…
Reference in a new issue