mirror of
https://github.com/TriliumNext/Notes.git
synced 2025-07-27 10:02:59 +08:00
36 lines
1.0 KiB
JavaScript
36 lines
1.0 KiB
JavaScript
const child_process = require("child_process");
|
|
const fs = require("fs");
|
|
const path = require("path");
|
|
|
|
function sign(sourcePath) {
|
|
const { WINDOWS_SIGN_EXECUTABLE } = process.env;
|
|
if (!WINDOWS_SIGN_EXECUTABLE) {
|
|
console.warn("[Sign] Skip signing due to missing environment variable.");
|
|
return;
|
|
}
|
|
|
|
try {
|
|
const command = `${WINDOWS_SIGN_EXECUTABLE} --executable "${sourcePath}"`;
|
|
console.log(`[Sign] ${command}`);
|
|
child_process.execSync(command);
|
|
} catch (e) {
|
|
console.error("[Sign] Got error while signing " + e.output.toString("utf-8"));
|
|
printSigningErrorLogs();
|
|
process.exit(2);
|
|
}
|
|
}
|
|
|
|
function printSigningErrorLogs() {
|
|
const logLocation = path.join(path.dirname(WINDOWS_SIGN_EXECUTABLE), "ev_signer_trilium.err.log");
|
|
|
|
if (!fs.existsSync(logLocation)) {
|
|
console.warn("[Sign] No debug log file found.");
|
|
return;
|
|
}
|
|
|
|
const logContent = fs.readFileSync(logLocation, "utf-8");
|
|
console.error("[Sign] Debug log content:\n" + logContent);
|
|
}
|
|
|
|
module.exports = sign;
|