fix: cleanupStuckedContainers
This commit is contained in:
108
apps/trpc-experimental/server/build/lib/importers/github.js
Normal file
108
apps/trpc-experimental/server/build/lib/importers/github.js
Normal file
@@ -0,0 +1,108 @@
|
||||
"use strict";
|
||||
var __create = Object.create;
|
||||
var __defProp = Object.defineProperty;
|
||||
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
||||
var __getOwnPropNames = Object.getOwnPropertyNames;
|
||||
var __getProtoOf = Object.getPrototypeOf;
|
||||
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
||||
var __export = (target, all) => {
|
||||
for (var name in all)
|
||||
__defProp(target, name, { get: all[name], enumerable: true });
|
||||
};
|
||||
var __copyProps = (to, from, except, desc) => {
|
||||
if (from && typeof from === "object" || typeof from === "function") {
|
||||
for (let key of __getOwnPropNames(from))
|
||||
if (!__hasOwnProp.call(to, key) && key !== except)
|
||||
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
||||
}
|
||||
return to;
|
||||
};
|
||||
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
||||
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
||||
mod
|
||||
));
|
||||
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
||||
var github_exports = {};
|
||||
__export(github_exports, {
|
||||
default: () => github_default
|
||||
});
|
||||
module.exports = __toCommonJS(github_exports);
|
||||
var import_jsonwebtoken = __toESM(require("jsonwebtoken"));
|
||||
var import_prisma = require("../../prisma");
|
||||
var import_common = require("../buildPacks/common");
|
||||
var import_common2 = require("../common");
|
||||
var import_executeCommand = require("../executeCommand");
|
||||
async function github_default({
|
||||
applicationId,
|
||||
workdir,
|
||||
githubAppId,
|
||||
repository,
|
||||
apiUrl,
|
||||
gitCommitHash,
|
||||
htmlUrl,
|
||||
branch,
|
||||
buildId,
|
||||
customPort,
|
||||
forPublic
|
||||
}) {
|
||||
const { default: got } = await import("got");
|
||||
const url = htmlUrl.replace("https://", "").replace("http://", "");
|
||||
if (forPublic) {
|
||||
await (0, import_common.saveBuildLog)({
|
||||
line: `Cloning ${repository}:${branch}...`,
|
||||
buildId,
|
||||
applicationId
|
||||
});
|
||||
if (gitCommitHash) {
|
||||
await (0, import_common.saveBuildLog)({
|
||||
line: `Checking out ${gitCommitHash} commit...`,
|
||||
buildId,
|
||||
applicationId
|
||||
});
|
||||
}
|
||||
await (0, import_executeCommand.executeCommand)({
|
||||
command: `git clone -q -b ${branch} https://${url}/${repository}.git ${workdir}/ && cd ${workdir} && git checkout ${gitCommitHash || ""} && git submodule update --init --recursive && git lfs pull && cd .. `,
|
||||
shell: true
|
||||
});
|
||||
} else {
|
||||
const body = await import_prisma.prisma.githubApp.findUnique({ where: { id: githubAppId } });
|
||||
if (body.privateKey)
|
||||
body.privateKey = (0, import_common2.decrypt)(body.privateKey);
|
||||
const { privateKey, appId, installationId } = body;
|
||||
const githubPrivateKey = privateKey.replace(/\\n/g, "\n").replace(/"/g, "");
|
||||
const payload = {
|
||||
iat: Math.round(new Date().getTime() / 1e3),
|
||||
exp: Math.round(new Date().getTime() / 1e3 + 60),
|
||||
iss: appId
|
||||
};
|
||||
const jwtToken = import_jsonwebtoken.default.sign(payload, githubPrivateKey, {
|
||||
algorithm: "RS256"
|
||||
});
|
||||
const { token } = await got.post(`${apiUrl}/app/installations/${installationId}/access_tokens`, {
|
||||
headers: {
|
||||
Authorization: `Bearer ${jwtToken}`,
|
||||
Accept: "application/vnd.github.machine-man-preview+json"
|
||||
}
|
||||
}).json();
|
||||
await (0, import_common.saveBuildLog)({
|
||||
line: `Cloning ${repository}:${branch}...`,
|
||||
buildId,
|
||||
applicationId
|
||||
});
|
||||
if (gitCommitHash) {
|
||||
await (0, import_common.saveBuildLog)({
|
||||
line: `Checking out ${gitCommitHash} commit...`,
|
||||
buildId,
|
||||
applicationId
|
||||
});
|
||||
}
|
||||
await (0, import_executeCommand.executeCommand)({
|
||||
command: `git clone -q -b ${branch} https://x-access-token:${token}@${url}/${repository}.git --config core.sshCommand="ssh -p ${customPort}" ${workdir}/ && cd ${workdir} && git checkout ${gitCommitHash || ""} && git submodule update --init --recursive && git lfs pull && cd .. `,
|
||||
shell: true
|
||||
});
|
||||
}
|
||||
const { stdout: commit } = await (0, import_executeCommand.executeCommand)({ command: `cd ${workdir}/ && git rev-parse HEAD`, shell: true });
|
||||
return commit.replace("\n", "");
|
||||
}
|
||||
// Annotate the CommonJS export names for ESM import in node:
|
||||
0 && (module.exports = {});
|
||||
Reference in New Issue
Block a user