try isogit

This commit is contained in:
dylan 2024-03-25 21:35:58 -07:00
parent 67e4bb3e6d
commit 2301a5f43c
3 changed files with 1505 additions and 432 deletions

1904
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -33,9 +33,10 @@
"@sinclair/typebox": "^0.31.5",
"dotenv": "^16.4.5",
"fastify": "^4.22.0",
"isomorphic-git": "^1.25.6",
"react-pico-8": "^4.1.0",
"react-router-dom": "^6.18.0",
"uuid": "^9.0.1",
"react-pico-8": "^4.1.0"
"uuid": "^9.0.1"
},
"devDependencies": {
"@databases/pg-migrations": "^5.0.2",

View File

@ -1,5 +1,8 @@
import { Type } from "@sinclair/typebox";
import { FirRouteInput, FirRouteOptions } from "../util/routewrap.js";
import fs from "fs";
import git from "isomorphic-git";
import http from "isomorphic-git/http/node";
const method = "POST";
const url = "/api/release";
@ -10,10 +13,27 @@ const url = "/api/release";
const payloadT = Type.Any();
const handler = ({payload}: FirRouteInput<typeof payloadT>) => {
const {png} = payload;
console.log(png);
// return payload;
const handler = async ({payload}: FirRouteInput<typeof payloadT>) => {
const {manifest, token} = payload;
if (!fs.existsSync("./repos")) {
fs.mkdirSync("./repos", {recursive: true})
}
await git.clone({
fs,
http,
headers: {
"Authentication": `token ${token}`,
},
dir: "./repos",
url: manifest.repo,
});
const localManifest = JSON.parse(await fs.promises.readFile("./repos/picobook.json", "utf8"));
fs.promises.rm("./repos");
console.log({
manifest,
localManifest,
});
return true;
};
export default {