refactor(scripts): simplify path management and command execution

- Replaces hardcoded script paths with a reusable helper function
- Enhances command execution logic for flexibility and readability
- Improves maintainability by consolidating path construction logic
This commit is contained in:
2025-07-04 11:50:24 +02:00
parent 466c1c4918
commit 18b493d524
2 changed files with 21 additions and 10 deletions

4
dist/main.js vendored
View File

@@ -15,8 +15,8 @@ function setEnv(key, value) {
} }
function main() { function main() {
const actionPath = process.env.GITHUB_ACTION_PATH || "."; const script = path.join(__dirname, "scripts", "detect-version-change.sh");
const script = path.join("./", "scripts/detect-version-change.sh");
run(script); run(script);

27
dist/post.js vendored
View File

@@ -2,29 +2,40 @@ const cp = require("child_process");
const path = require("path"); const path = require("path");
function run(script, args = []) { function run(script, args = []) {
cp.execFileSync(script, { const cmd = typeof script === "string" ? script : script.join(" ");
cp.execSync(cmd, {
stdio: "inherit", stdio: "inherit",
shell: true, shell: true,
env: process.env, env: process.env,
}); });
} }
function scriptPath(...segments) {
return path.join(__dirname, "scripts", ...segments);
}
function main() { function main() {
const actionPath = process.env.GITHUB_ACTION_PATH || ".";
const versionChanged = (process.env.VERSION_CHANGED || "false").toLowerCase() === "true"; const versionChanged = (process.env.VERSION_CHANGED || "false").toLowerCase() === "true";
const readCliff = path.join(actionPath, "scripts/read-cliff-version.sh"); const readCliffScript = scriptPath("read-cliff-version.sh");
const cliffVersion = cp.execSync(readCliff, { encoding: "utf-8", shell: true }).trim().split("\n").pop(); const cliffVersion = cp
.execSync(readCliffScript, { encoding: "utf-8", shell: true })
.trim()
.split("\n")
.pop();
run(path.join(actionPath, "scripts/install-git-cliff.sh"), [cliffVersion]); run(scriptPath("install-git-cliff.sh") + " " + cliffVersion);
run(`${path.join(actionPath, "scripts/setup-git.sh")} "${process.env.INPUT_AUTHOR_NAME}" "${process.env.INPUT_AUTHOR_EMAIL}"`); run(
scriptPath("setup-git.sh") +
` "${process.env.INPUT_AUTHOR_NAME}" "${process.env.INPUT_AUTHOR_EMAIL}"`
);
if (versionChanged) { if (versionChanged) {
process.env.RELEASE_PUBLISH_TOKEN = process.env.INPUT_TOKEN || ""; process.env.RELEASE_PUBLISH_TOKEN = process.env.INPUT_TOKEN || "";
run(path.join(actionPath, "scripts/release-from-version.sh")); run(scriptPath("release-from-version.sh"));
} else { } else {
run(path.join(actionPath, "scripts/generate-unreleased-changelog.sh")); run(scriptPath("generate-unreleased-changelog.sh"));
} }
} }