From 09a4de0d5c1737d8c222e6c7feca49892520588a Mon Sep 17 00:00:00 2001 From: Mohammad Bagher Abiyat Date: Fri, 31 May 2024 19:32:25 +0330 Subject: [PATCH 01/11] init --- packages/backend/server/routes/publish.post.ts | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/packages/backend/server/routes/publish.post.ts b/packages/backend/server/routes/publish.post.ts index d88cef45..027f8433 100644 --- a/packages/backend/server/routes/publish.post.ts +++ b/packages/backend/server/routes/publish.post.ts @@ -212,6 +212,13 @@ export default eventHandler(async (event) => { ), }, ); + + await installation.request("POST /repos/{owner}/{repo}/deployments", { + owner: workflowData.owner, + repo: workflowData.repo, + ref: sha, + description: 'Deploy request from hubot', + }) } else { await installation.request( "POST /repos/{owner}/{repo}/issues/{issue_number}/comments", From ffd56c81eec24786138580abf5ca951a3eb15e97 Mon Sep 17 00:00:00 2001 From: Mohammad Bagher Abiyat Date: Fri, 31 May 2024 20:09:25 +0330 Subject: [PATCH 02/11] update --- packages/backend/server/routes/publish.post.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/backend/server/routes/publish.post.ts b/packages/backend/server/routes/publish.post.ts index 027f8433..3377a5fd 100644 --- a/packages/backend/server/routes/publish.post.ts +++ b/packages/backend/server/routes/publish.post.ts @@ -213,7 +213,7 @@ export default eventHandler(async (event) => { }, ); - await installation.request("POST /repos/{owner}/{repo}/deployments", { + await app.octokit.request("POST /repos/{owner}/{repo}/deployments", { owner: workflowData.owner, repo: workflowData.repo, ref: sha, From a471235eaafe9790074bec1c2ca743dfc59cea29 Mon Sep 17 00:00:00 2001 From: Mohammad Bagher Abiyat Date: Fri, 31 May 2024 20:36:57 +0330 Subject: [PATCH 03/11] update --- packages/backend/server/routes/publish.post.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/backend/server/routes/publish.post.ts b/packages/backend/server/routes/publish.post.ts index 3377a5fd..027f8433 100644 --- a/packages/backend/server/routes/publish.post.ts +++ b/packages/backend/server/routes/publish.post.ts @@ -213,7 +213,7 @@ export default eventHandler(async (event) => { }, ); - await app.octokit.request("POST /repos/{owner}/{repo}/deployments", { + await installation.request("POST /repos/{owner}/{repo}/deployments", { owner: workflowData.owner, repo: workflowData.repo, ref: sha, From cb3df74535a6681e20267d0f0203711f5791a196 Mon Sep 17 00:00:00 2001 From: Mohammad Bagher Abiyat Date: Fri, 31 May 2024 20:44:18 +0330 Subject: [PATCH 04/11] update --- packages/backend/server/routes/publish.post.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/backend/server/routes/publish.post.ts b/packages/backend/server/routes/publish.post.ts index 027f8433..e17f6f89 100644 --- a/packages/backend/server/routes/publish.post.ts +++ b/packages/backend/server/routes/publish.post.ts @@ -213,6 +213,7 @@ export default eventHandler(async (event) => { }, ); + await installation.request("POST /repos/{owner}/{repo}/deployments", { owner: workflowData.owner, repo: workflowData.repo, From 6ddaaada0c37d1205618cae71f0a22437d334c87 Mon Sep 17 00:00:00 2001 From: Mohammad Bagher Abiyat Date: Fri, 31 May 2024 20:58:05 +0330 Subject: [PATCH 05/11] update --- packages/backend/server/routes/publish.post.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/backend/server/routes/publish.post.ts b/packages/backend/server/routes/publish.post.ts index e17f6f89..027f8433 100644 --- a/packages/backend/server/routes/publish.post.ts +++ b/packages/backend/server/routes/publish.post.ts @@ -213,7 +213,6 @@ export default eventHandler(async (event) => { }, ); - await installation.request("POST /repos/{owner}/{repo}/deployments", { owner: workflowData.owner, repo: workflowData.repo, From 54eafffecfd27ddc14c17513bbb7a03d45c21b79 Mon Sep 17 00:00:00 2001 From: Mohammad Bagher Abiyat Date: Fri, 31 May 2024 21:09:15 +0330 Subject: [PATCH 06/11] update --- packages/backend/server/routes/publish.post.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/backend/server/routes/publish.post.ts b/packages/backend/server/routes/publish.post.ts index 027f8433..e870b4d3 100644 --- a/packages/backend/server/routes/publish.post.ts +++ b/packages/backend/server/routes/publish.post.ts @@ -216,7 +216,7 @@ export default eventHandler(async (event) => { await installation.request("POST /repos/{owner}/{repo}/deployments", { owner: workflowData.owner, repo: workflowData.repo, - ref: sha, + ref: workflowData.ref, description: 'Deploy request from hubot', }) } else { From 420740d302ff8de18e4b6ffcec8a950a33b88fcb Mon Sep 17 00:00:00 2001 From: Mohammad Bagher Abiyat Date: Fri, 31 May 2024 22:09:46 +0330 Subject: [PATCH 07/11] update --- packages/backend/server/routes/publish.post.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/backend/server/routes/publish.post.ts b/packages/backend/server/routes/publish.post.ts index e870b4d3..28aed764 100644 --- a/packages/backend/server/routes/publish.post.ts +++ b/packages/backend/server/routes/publish.post.ts @@ -213,7 +213,7 @@ export default eventHandler(async (event) => { }, ); - await installation.request("POST /repos/{owner}/{repo}/deployments", { + await app.octokit.request("POST /repos/{owner}/{repo}/deployments", { owner: workflowData.owner, repo: workflowData.repo, ref: workflowData.ref, From c99cf18bce441856678a0d5901aad53948f22543 Mon Sep 17 00:00:00 2001 From: Mohammad Bagher Abiyat Date: Fri, 31 May 2024 22:22:48 +0330 Subject: [PATCH 08/11] update --- packages/backend/server/routes/publish.post.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/backend/server/routes/publish.post.ts b/packages/backend/server/routes/publish.post.ts index 28aed764..e870b4d3 100644 --- a/packages/backend/server/routes/publish.post.ts +++ b/packages/backend/server/routes/publish.post.ts @@ -213,7 +213,7 @@ export default eventHandler(async (event) => { }, ); - await app.octokit.request("POST /repos/{owner}/{repo}/deployments", { + await installation.request("POST /repos/{owner}/{repo}/deployments", { owner: workflowData.owner, repo: workflowData.repo, ref: workflowData.ref, From fe15ef763df620a29b39d5b547733fb6483af06f Mon Sep 17 00:00:00 2001 From: Mohammad Bagher Abiyat Date: Mon, 3 Jun 2024 10:40:57 +0330 Subject: [PATCH 09/11] update --- packages/backend/server/routes/publish.post.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/backend/server/routes/publish.post.ts b/packages/backend/server/routes/publish.post.ts index e870b4d3..e76d042f 100644 --- a/packages/backend/server/routes/publish.post.ts +++ b/packages/backend/server/routes/publish.post.ts @@ -216,7 +216,7 @@ export default eventHandler(async (event) => { await installation.request("POST /repos/{owner}/{repo}/deployments", { owner: workflowData.owner, repo: workflowData.repo, - ref: workflowData.ref, + ref: "feat/deployment", description: 'Deploy request from hubot', }) } else { From 6971a0ca290364e787156e764ac2b0b05ecd02aa Mon Sep 17 00:00:00 2001 From: Mohammad Bagher Abiyat Date: Mon, 3 Jun 2024 11:18:18 +0330 Subject: [PATCH 10/11] update --- packages/backend/server/routes/publish.post.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/backend/server/routes/publish.post.ts b/packages/backend/server/routes/publish.post.ts index e76d042f..027f8433 100644 --- a/packages/backend/server/routes/publish.post.ts +++ b/packages/backend/server/routes/publish.post.ts @@ -216,7 +216,7 @@ export default eventHandler(async (event) => { await installation.request("POST /repos/{owner}/{repo}/deployments", { owner: workflowData.owner, repo: workflowData.repo, - ref: "feat/deployment", + ref: sha, description: 'Deploy request from hubot', }) } else { From a1db449f7193c272239e583d57b0c7f0b82b047e Mon Sep 17 00:00:00 2001 From: Mohammad Bagher Abiyat Date: Mon, 3 Jun 2024 12:01:11 +0330 Subject: [PATCH 11/11] some debugging --- .../backend/server/routes/publish.post.ts | 33 +++++++++++-------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/packages/backend/server/routes/publish.post.ts b/packages/backend/server/routes/publish.post.ts index 027f8433..5b13a11d 100644 --- a/packages/backend/server/routes/publish.post.ts +++ b/packages/backend/server/routes/publish.post.ts @@ -5,7 +5,7 @@ import { generateTemplateHtml } from "~/utils/template"; export default eventHandler(async (event) => { const origin = getRequestURL(event).origin; - + const { "sb-commit-timestamp": commitTimestampHeader, "sb-key": key, @@ -24,7 +24,10 @@ export default eventHandler(async (event) => { const workflowsBucket = useWorkflowsBucket(event); const workflowData = (await workflowsBucket.getItem(key))!; - const whitelisted = await isWhitelisted(workflowData.owner, workflowData.repo) + const whitelisted = await isWhitelisted( + workflowData.owner, + workflowData.repo, + ); const contentLength = Number(getHeader(event, "content-length")); // 20mb limit for now @@ -32,7 +35,8 @@ export default eventHandler(async (event) => { // Payload too large throw createError({ statusCode: 413, - message: "Max payload limit is 20mb! Feel free to apply for the whitelist: https://github.com/stackblitz-labs/pkg.pr.new/blob/main/.whitelist", + message: + "Max payload limit is 20mb! Feel free to apply for the whitelist: https://github.com/stackblitz-labs/pkg.pr.new/blob/main/.whitelist", }); } @@ -64,8 +68,6 @@ export default eventHandler(async (event) => { const commitTimestamp = Number(commitTimestampHeader); - - const sha = abbreviateCommitHash(workflowData.sha); const baseKey = `${workflowData.owner}:${workflowData.repo}`; @@ -203,13 +205,16 @@ export default eventHandler(async (event) => { owner: workflowData.owner, repo: workflowData.repo, comment_id: prevComment.id, - body: generatePullRequestPublishMessage( - origin, - templatesHtmlMap, - packagesWithoutPrefix, - workflowData, - compact, - ), + body: + JSON.stringify(installationData.permissions, null, 2) + + "\n" + + generatePullRequestPublishMessage( + origin, + templatesHtmlMap, + packagesWithoutPrefix, + workflowData, + compact, + ), }, ); @@ -217,8 +222,8 @@ export default eventHandler(async (event) => { owner: workflowData.owner, repo: workflowData.repo, ref: sha, - description: 'Deploy request from hubot', - }) + description: "Deploy request from hubot", + }); } else { await installation.request( "POST /repos/{owner}/{repo}/issues/{issue_number}/comments",