From 0bab3623f4f1ef7dc0b518e93c620e1b9ac9d58a Mon Sep 17 00:00:00 2001 From: Sourav Chanduka Date: Mon, 23 Aug 2021 18:49:15 +0530 Subject: [PATCH] eslint fix --- packages/core/__tests__/core.test.ts | 7 ++-- packages/core/src/core.ts | 2 +- packages/core/src/oidc-utils.ts | 53 ++++++++++++++++------------ 3 files changed, 34 insertions(+), 28 deletions(-) diff --git a/packages/core/__tests__/core.test.ts b/packages/core/__tests__/core.test.ts index bf35f152..610429c5 100644 --- a/packages/core/__tests__/core.test.ts +++ b/packages/core/__tests__/core.test.ts @@ -5,7 +5,6 @@ import * as core from '../src/core' import {HttpClient} from '@actions/http-client' import {toCommandProperties} from '../src/utils' - /* eslint-disable @typescript-eslint/unbound-method */ const testEnvVars = { @@ -437,12 +436,11 @@ function verifyFileCommand(command: string, expectedContents: string): void { } } -function getTokenEndPoint() { +function getTokenEndPoint(): string { return 'https://vstoken.actions.githubusercontent.com/.well-known/openid-configuration' } describe('oidc-client-tests', () => { - it('Get Http Client', async () => { const http = new HttpClient('actions/oidc-client') expect(http).toBeDefined() @@ -453,5 +451,4 @@ describe('oidc-client-tests', () => { const res = await http.get(getTokenEndPoint()) expect(res.message.statusCode).toBe(200) }) - -}) \ No newline at end of file +}) diff --git a/packages/core/src/core.ts b/packages/core/src/core.ts index d31550a4..ef319c20 100644 --- a/packages/core/src/core.ts +++ b/packages/core/src/core.ts @@ -353,4 +353,4 @@ export function getState(name: string): string { export async function getIDToken(aud?: string): Promise { return await OidcClient.getIDToken(aud) -} \ No newline at end of file +} diff --git a/packages/core/src/oidc-utils.ts b/packages/core/src/oidc-utils.ts index ff69a8e8..b0ec61cc 100644 --- a/packages/core/src/oidc-utils.ts +++ b/packages/core/src/oidc-utils.ts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-extraneous-class */ import * as actions_http_client from '@actions/http-client' import {IRequestOptions} from '@actions/http-client/interfaces' import {HttpClient} from '@actions/http-client' @@ -13,23 +14,27 @@ interface TokenResponse { } export class OidcClient { - - private static createHttpClient(allowRetry = true, maxRetry = 10) { - let requestOptions: IRequestOptions = { + private static createHttpClient( + allowRetry = true, + maxRetry = 10 + ): actions_http_client.HttpClient { + const requestOptions: IRequestOptions = { allowRetries: allowRetry, maxRetries: maxRetry } - - return new HttpClient('actions/oidc-client', [ - new BearerCredentialHandler(OidcClient.getRuntimeToken())], - requestOptions) + + return new HttpClient( + 'actions/oidc-client', + [new BearerCredentialHandler(OidcClient.getRuntimeToken())], + requestOptions + ) } private static getApiVersion(): string { return '2.0' } - private static getRuntimeToken(){ + private static getRuntimeToken(): string { const token = process.env['ACTIONS_RUNTIME_TOKEN'] if (!token) { throw new Error('Unable to get ACTIONS_RUNTIME_TOKEN env variable') @@ -37,43 +42,47 @@ export class OidcClient { return token } - private static getIDTokenUrl(){ - let runtimeUrl = process.env['ACTIONS_ID_TOKEN_REQUEST_URL'] + private static getIDTokenUrl(): string { + const runtimeUrl = process.env['ACTIONS_ID_TOKEN_REQUEST_URL'] if (!runtimeUrl) { throw new Error('Unable to get ACTIONS_ID_TOKEN_REQUEST_URL env variable') } - return runtimeUrl + '?api-version=' + OidcClient.getApiVersion() + return `${runtimeUrl}?api-version=${OidcClient.getApiVersion()}` } - private static async postCall(id_token_url: string, data: TokenRequest): Promise { + private static async postCall( + id_token_url: string, + data: TokenRequest + ): Promise { const httpclient = OidcClient.createHttpClient() - const res = await httpclient.postJson(id_token_url,data).catch((error) => { - throw new Error( - `Failed to get ID Token. \n + const res = await httpclient + .postJson(id_token_url, data) + .catch(error => { + throw new Error( + `Failed to get ID Token. \n Error Code : ${error.statusCode}\n Error Message: ${error.result.message}` - ) - }) + ) + }) const id_token = res.result?.value if (!id_token) { throw new Error('Response json body do not have ID Token field') } return id_token - } - static async getIDToken(audience: string | undefined): Promise { + static async getIDToken(audience?: string): Promise { try { // New ID Token is requested from action service const id_token_url: string = OidcClient.getIDTokenUrl() debug(`ID token url is ${id_token_url}`) - const data: TokenRequest = { aud: audience } + const data: TokenRequest = {aud: audience} - debug(`audience is ${!!audience ? audience : 'not defined'}`) + debug(`audience is ${audience ? audience : 'not defined'}`) const id_token = await OidcClient.postCall(id_token_url, data) setSecret(id_token) @@ -82,4 +91,4 @@ export class OidcClient { throw new Error(`Error message: ${error.message}`) } } -} \ No newline at end of file +}