From 42b51ab7b06cb6af3dbfb3eb0c6a3b15cafe074e Mon Sep 17 00:00:00 2001 From: Joseph Garrone Date: Thu, 20 Jun 2024 03:39:57 +0200 Subject: [PATCH] Fix previous feat --- dist/index.js | 7 +++-- src/is_package_json_version_upgraded.ts | 33 +++++++++++--------- src/test/is_package_json_version_upgraded.ts | 13 +++++--- 3 files changed, 33 insertions(+), 20 deletions(-) diff --git a/dist/index.js b/dist/index.js index 29a4530..1473f88 100644 --- a/dist/index.js +++ b/dist/index.js @@ -321,12 +321,15 @@ exports.action = action; function getPackageJsonVersion(params) { return __awaiter(this, void 0, void 0, function* () { const { owner, repo, branch, github_token } = params; - const version = yield node_fetch_1.default(urlJoin(`https://raw.github.com`, owner, repo, branch, "package.json"), { + const version = yield node_fetch_1.default(`https://api.github.com/repos/${owner}/${repo}/contents/package.json?ref=${branch}`, { "headers": { "Authorization": `token ${github_token}` } }) - .then(res => res.text()) + .then((res) => __awaiter(this, void 0, void 0, function* () { + const { content } = JSON.parse(yield res.text()); + return Buffer.from(content, "base64").toString("utf-8"); + })) .then(text => JSON.parse(text)) .then(({ version }) => version) .catch(() => undefined); diff --git a/src/is_package_json_version_upgraded.ts b/src/is_package_json_version_upgraded.ts index a11d85e..707b087 100644 --- a/src/is_package_json_version_upgraded.ts +++ b/src/is_package_json_version_upgraded.ts @@ -110,27 +110,32 @@ async function getPackageJsonVersion(params: { github_token: string; }): Promise { - const { owner, repo, branch, github_token } = params; + const { + owner, + repo, + branch, + github_token + } = params; const version = await fetch( - urlJoin( - `https://raw.github.com`, - owner, - repo, - branch, - "package.json" - ), + `https://api.github.com/repos/${owner}/${repo}/contents/package.json?ref=${branch}`, { - "headers": { - "Authorization": `token ${github_token}` - } + "headers": { + "Authorization": `token ${github_token}` } - ) - .then(res => res.text()) + }) + .then(async res => { + + const { content }= JSON.parse(await res.text()) as { content: string; }; + + return Buffer.from(content, "base64").toString("utf-8"); + + }) .then(text => JSON.parse(text)) + .then(({ version }) => version as string) .catch(() => undefined) - ; + if (version === undefined) { return undefined; diff --git a/src/test/is_package_json_version_upgraded.ts b/src/test/is_package_json_version_upgraded.ts index 9221e31..a6d2266 100644 --- a/src/test/is_package_json_version_upgraded.ts +++ b/src/test/is_package_json_version_upgraded.ts @@ -1,16 +1,21 @@ import { action } from "../is_package_json_version_upgraded"; +import { assert } from "tsafe/assert"; (async () => { - const repo = "keycloakify-demo-app"; + const repo = "tss-react"; + + const github_token = process.env.GITHUB_TOKEN + + assert(github_token !== undefined); const result = await action("is_package_json_version_upgraded", { - "owner": "InseeFrLab", + "owner": "garronej", repo, - "branch": "4fc0ccb46bdb3912e0a215ca3ae45aed458ea6a4", - "github_token": "" + "branch": "main", + github_token }, { "debug": console.log }); console.log(result);