mirror of
https://github.com/karl0ss/homepage.git
synced 2025-05-03 22:13:39 +01:00
28 lines
705 B
JavaScript
28 lines
705 B
JavaScript
![]() |
import { join } from "path";
|
||
|
import { createHash } from "crypto";
|
||
|
import { readFileSync } from "fs";
|
||
|
|
||
|
import checkAndCopyConfig from "utils/config/config";
|
||
|
|
||
|
const configs = ["docker.yaml", "settings.yaml", "services.yaml", "bookmarks.yaml"];
|
||
|
|
||
|
function hash(buffer) {
|
||
|
const hashSum = createHash("sha256");
|
||
|
hashSum.update(buffer);
|
||
|
return hashSum.digest("hex");
|
||
|
}
|
||
|
|
||
|
export default async function handler(req, res) {
|
||
|
const hashes = configs.map((config) => {
|
||
|
checkAndCopyConfig(config);
|
||
|
const configYaml = join(process.cwd(), "config", config);
|
||
|
return hash(readFileSync(configYaml, "utf8"));
|
||
|
});
|
||
|
|
||
|
const combinedHash = hash(hashes.join(""));
|
||
|
|
||
|
res.send({
|
||
|
hash: combinedHash,
|
||
|
});
|
||
|
}
|