From 12d9f04d338a6835dcb5868624b88cf7aaf430ce Mon Sep 17 00:00:00 2001
From: Jake Bailey <5341706+jakebailey@users.noreply.github.com>
Date: Wed, 23 Aug 2023 16:11:30 -0700
Subject: [PATCH] Remove perf-result-post (#55470)
---
scripts/perf-result-post.mjs | 88 ------------------------------------
1 file changed, 88 deletions(-)
delete mode 100644 scripts/perf-result-post.mjs
diff --git a/scripts/perf-result-post.mjs b/scripts/perf-result-post.mjs
deleted file mode 100644
index 1be50f172ab..00000000000
--- a/scripts/perf-result-post.mjs
+++ /dev/null
@@ -1,88 +0,0 @@
-import {
- Octokit,
-} from "@octokit/rest";
-import assert from "assert";
-import ado from "azure-devops-node-api";
-import fs from "fs";
-import fetch from "node-fetch";
-
-async function main() {
- const source = process.env.SOURCE_ISSUE;
- if (!source) throw new Error("SOURCE_ISSUE environment variable not set.");
-
- const requester = process.env.REQUESTING_USER;
- if (!requester) throw new Error("REQUESTING_USER environment variable not set.");
-
- const buildId = process.env.BUILD_BUILDID;
- if (!buildId) throw new Error("BUILD_BUILDID environment variable not set.");
-
- const postedComment = process.env.STATUS_COMMENT;
- if (!postedComment) throw new Error("STATUS_COMMENT environment variable not set.");
-
- const [auth, fragment, includeArtifact] = process.argv.slice(2);
- if (!auth) throw new Error("First argument must be a GitHub auth token.");
- if (!fragment) throw new Error("Second argument must be a path to an HTML fragment.");
-
- const gh = new Octokit({ auth });
- try {
- console.log(`Loading fragment from ${fragment}...`);
- const outputTableText = fs.readFileSync(fragment, { encoding: "utf8" });
- console.log(`Fragment contents:\n${outputTableText}`);
-
- let benchmarkText = "";
- if (includeArtifact === "--include-artifact") {
- // post a link to the benchmark file
- const cli = new ado.WebApi("https://typescript.visualstudio.com/defaultcollection", ado.getHandlerFromToken("")); // Empty token, anon auth
- const build = await cli.getBuildApi();
- const artifact = await build.getArtifact("typescript", +buildId, "benchmark");
- assert(artifact.resource?.url);
- const updatedUrl = new URL(artifact.resource.url);
- updatedUrl.search = `artifactName=benchmark&fileId=${artifact.resource.data}&fileName=manifest`;
- const resp = await (await fetch(`${updatedUrl}`)).json();
- for (const file of /** @type {any} */ (resp).items) {
- if (/[\\/]linux\.benchmark$/.test(file.path)) {
- const benchmarkUrl = new URL(artifact.resource.url);
- benchmarkUrl.search = `artifactName=benchmark&fileId=${file.blob.id}&fileName=linux.benchmark`;
- benchmarkText = `\nDeveloper Information:
Download Benchmark
\n`;
- break;
- }
- }
- }
-
- const data = await gh.issues.createComment({
- issue_number: +source,
- owner: "Microsoft",
- repo: "TypeScript",
- body: `@${requester}\nThe results of the perf run you requested are in!\n Here they are:
\n${outputTableText}\n
${benchmarkText} `,
- });
-
- console.log(`Results posted!`);
- const newCommentUrl = data.data.html_url;
- const comment = await gh.issues.getComment({
- owner: "Microsoft",
- repo: "TypeScript",
- comment_id: +postedComment,
- });
- const newBody = `${comment.data.body}\n\nUpdate: [The results are in!](${newCommentUrl})`;
- await gh.issues.updateComment({
- owner: "Microsoft",
- repo: "TypeScript",
- comment_id: +postedComment,
- body: newBody,
- });
- }
- catch (e) {
- const gh = new Octokit({ auth });
- await gh.issues.createComment({
- issue_number: +source,
- owner: "Microsoft",
- repo: "TypeScript",
- body: `Hey @${requester}, something went wrong when publishing results. ([You can check the log here](https://typescript.visualstudio.com/TypeScript/_build/index?buildId=${buildId}&_a=summary)).`,
- });
- }
-}
-
-main().catch(e => {
- console.error(e);
- process.exit(1);
-});