From ed8303ca53ccdf5457dc31f0f1ffcc492f9c577f Mon Sep 17 00:00:00 2001 From: Richard Simpson Date: Tue, 31 Mar 2020 12:15:12 -0500 Subject: [PATCH] fix: fix got not being use correctly and path prefix --- action.js | 8 ++++---- dist/index.js | 13 ++++++------- integrationTests/enterprise/enterprise.test.js | 4 ++-- 3 files changed, 12 insertions(+), 13 deletions(-) diff --git a/action.js b/action.js index ff04cf9..555c1e8 100644 --- a/action.js +++ b/action.js @@ -72,7 +72,7 @@ async function exportSecrets() { requestOptions.headers["X-Vault-Namespace"] = vaultNamespace; } - let requestPath = `${vaultUrl}/v1`; + let requestPath = `v1`; const kvRequest = !secretPath.startsWith('/') if (!kvRequest) { requestPath += secretPath; @@ -87,7 +87,7 @@ async function exportSecrets() { body = responseCache.get(requestPath); core.debug('ℹ using cached response'); } else { - const result = await got(requestPath, requestOptions); + const result = await client.get(requestPath, requestOptions); body = result.body; responseCache.set(requestPath, body); } @@ -192,7 +192,7 @@ async function retrieveToken(method, client) { responseType: 'json' }; - const result = await client.post(`/v1/auth/approle/login`, options); + const result = await client.post(`v1/auth/approle/login`, options); if (result && result.body && result.body.auth && result.body.auth.client_token) { core.debug('✔ Vault Token has retrieved from approle'); return result.body.auth.client_token; @@ -210,7 +210,7 @@ async function retrieveToken(method, client) { responseType: 'json' }; - const result = await client.post(`/v1/auth/github/login`, options); + const result = await client.post(`v1/auth/github/login`, options); if (result && result.body && result.body.auth && result.body.auth.client_token) { core.debug('✔ Vault Token has retrieved from approle'); return result.body.auth.client_token; diff --git a/dist/index.js b/dist/index.js index 6e5f5e5..a658c33 100644 --- a/dist/index.js +++ b/dist/index.js @@ -4906,8 +4906,7 @@ async function exportSecrets() { } const defaultOptions = { - baseUrl: vaultUrl, - throwHttpErrors: true, + prefixUrl: vaultUrl, headers: {} } @@ -4920,7 +4919,7 @@ async function exportSecrets() { } const client = got.extend(defaultOptions); - const vaultToken = await retrieveToken(vaultMethod, client); + const vaultToken = await retrieveToken(vaultMethod, /** @type {any} */ (client)); if (!enginePath) { enginePath = 'secret'; @@ -4952,7 +4951,7 @@ async function exportSecrets() { requestOptions.headers["X-Vault-Namespace"] = vaultNamespace; } - let requestPath = `${vaultUrl}/v1`; + let requestPath = `v1`; const kvRequest = !secretPath.startsWith('/') if (!kvRequest) { requestPath += secretPath; @@ -4967,7 +4966,7 @@ async function exportSecrets() { body = responseCache.get(requestPath); core.debug('ℹ using cached response'); } else { - const result = await got(requestPath, requestOptions); + const result = await client.get(requestPath, requestOptions); body = result.body; responseCache.set(requestPath, body); } @@ -5072,7 +5071,7 @@ async function retrieveToken(method, client) { responseType: 'json' }; - const result = await client.post(`/v1/auth/approle/login`, options); + const result = await client.post(`v1/auth/approle/login`, options); if (result && result.body && result.body.auth && result.body.auth.client_token) { core.debug('✔ Vault Token has retrieved from approle'); return result.body.auth.client_token; @@ -5090,7 +5089,7 @@ async function retrieveToken(method, client) { responseType: 'json' }; - const result = await client.post(`/v1/auth/github/login`, options); + const result = await client.post(`v1/auth/github/login`, options); if (result && result.body && result.body.auth && result.body.auth.client_token) { core.debug('✔ Vault Token has retrieved from approle'); return result.body.auth.client_token; diff --git a/integrationTests/enterprise/enterprise.test.js b/integrationTests/enterprise/enterprise.test.js index 6c137bb..c1e979f 100644 --- a/integrationTests/enterprise/enterprise.test.js +++ b/integrationTests/enterprise/enterprise.test.js @@ -212,7 +212,7 @@ describe('authenticate with approle', () => { jest.resetAllMocks(); when(core.getInput) - .calledWith('method') + .calledWith('method', expect.anything()) .mockReturnValueOnce('approle'); when(core.getInput) .calledWith('roleId') @@ -228,7 +228,7 @@ describe('authenticate with approle', () => { .mockReturnValueOnce('ns2'); }); - it('authenticate with approle', async()=> { + it.only('authenticate with approle', async() => { mockInput('test secret'); await exportSecrets();