refactor(index): 匯出純函式並僅在直接執行時跑主流程

This commit is contained in:
Jeffery
2026-06-26 15:27:30 +08:00
parent ad54073690
commit 20b0387b4d
+13 -6
View File
@@ -1,3 +1,4 @@
import { fileURLToPath } from 'node:url';
import { loadInputs, logInputs } from './lib/inputs.js';
import { Git } from './lib/git.js';
import { GiteaClient } from './lib/gitea.js';
@@ -191,9 +192,15 @@ function reportPull(pull, created) {
}
}
main().catch((err) => {
const detail = err?.stack || err?.message || String(err);
// 錯誤訊息/stack 可能夾帶 token,輸出到 CI 日誌前先遮蔽
log.error(maskSecrets(detail, [process.env.GITEA_TOKEN]));
process.exit(1);
});
// 純函式對外匯出,供測試使用(不觸發 main 流程)
export { truncateDiff, fallbackSummary, buildResolveBranchName, buildResolveBody };
// 僅在直接以 `node index.js` 執行時才跑主流程;被測試 import 時不執行
if (process.argv[1] && fileURLToPath(import.meta.url) === process.argv[1]) {
main().catch((err) => {
const detail = err?.stack || err?.message || String(err);
// 錯誤訊息/stack 可能夾帶 token,輸出到 CI 日誌前先遮蔽
log.error(maskSecrets(detail, [process.env.GITEA_TOKEN]));
process.exit(1);
});
}