Refactor start and dev commands. Start in child processes. Handle errors better
This commit is contained in:
Vendored
+48
@@ -0,0 +1,48 @@
|
||||
import path from "path";
|
||||
import { mkdirSync, readdirSync, rmSync, statSync, writeFileSync } from "fs";
|
||||
import grabDirNames from "../utils/grab-dir-names";
|
||||
import grabConstants from "../utils/grab-constants";
|
||||
import { AppData } from "../data/app-data";
|
||||
const { BUNX_LOGS_DIR } = grabDirNames();
|
||||
export default function cleanupLogsDirs() {
|
||||
const logs_dirs = readdirSync(BUNX_LOGS_DIR);
|
||||
const { config } = grabConstants();
|
||||
const MAX_LOGS = config.max_logs || AppData["DefaultMaxLogs"];
|
||||
for (let i = 0; i < logs_dirs.length; i++) {
|
||||
const dir = logs_dirs[i];
|
||||
const full_path = path.join(BUNX_LOGS_DIR, dir);
|
||||
const path_stats = statSync(full_path);
|
||||
if (!path_stats.isDirectory()) {
|
||||
continue;
|
||||
}
|
||||
const sub_dir_files = readdirSync(full_path).sort((a, b) => {
|
||||
const timestamp_a = Number(a.split(".")[0]);
|
||||
const timestamp_b = Number(b.split(".")[0]);
|
||||
if (timestamp_a > timestamp_b)
|
||||
return 1;
|
||||
return -1;
|
||||
});
|
||||
for (let j = 0; j < sub_dir_files.length; j++) {
|
||||
const sub_dir_file = sub_dir_files[j];
|
||||
const sub_dir_file_full_path = path.join(full_path, sub_dir_file);
|
||||
const sub_dir_file_Stats = statSync(sub_dir_file_full_path);
|
||||
if (!sub_dir_file_Stats.isFile()) {
|
||||
rmSync(sub_dir_file_full_path, {
|
||||
force: true,
|
||||
recursive: true,
|
||||
});
|
||||
continue;
|
||||
}
|
||||
if (j > MAX_LOGS - 1) {
|
||||
rmSync(sub_dir_file_full_path, { force: true });
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// log.info("Running development server ...");
|
||||
// try {
|
||||
// rmSync(HYDRATION_DST_DIR, { recursive: true });
|
||||
// rmSync(BUNX_CWD_PAGES_REWRITE_DIR, { recursive: true });
|
||||
// } catch (error) {}
|
||||
// await bunextInit();
|
||||
// await startServer();
|
||||
Reference in New Issue
Block a user