Add guard clauses in getHashFromProcess

Additional logic has been introduced to the getHashFromProcess function. It will now exit early if the runtime is not Node.js or if the environment is not a development environment to prevent calling a Node.js command. This is done to avoid potential issues in the edge runtime and non-development environments.
This commit is contained in:
gbuomprisco
2024-06-23 21:09:00 +08:00
parent 6b48778753
commit a3e5f928c4

View File

@@ -32,6 +32,19 @@ function getGitHash() {
}
async function getHashFromProcess() {
// avoid calling a Node.js command in the edge runtime
if (process.env.NEXT_RUNTIME !== 'nodejs') {
console.log(`[INFO] Could not find git hash in environment variables. Falling back to git command. Supply a known git hash environment variable to avoid this warning.`)
return;
}
if (process.env.NODE_ENV !== 'development') {
console.warn(
`[WARN] Could not find git hash in environment variables. Falling back to git command. Supply a known git hash environment variable to avoid this warning.`,
);
}
const { execSync } = await import('child_process');
return execSync('git log --pretty=format:"%h" -n1').toString().trim();