mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-06 21:10:43 +00:00
fix: run packed bundled postinstall in release check
(cherry picked from commit e57e54e591)
This commit is contained in:
@@ -807,6 +807,20 @@ export function runBundledPluginPostinstall(params = {}) {
|
||||
});
|
||||
}
|
||||
|
||||
if (import.meta.url === pathToFileURL(process.argv[1] ?? "").href) {
|
||||
export function isDirectPostinstallInvocation(params = {}) {
|
||||
const entryPath = params.entryPath ?? process.argv[1];
|
||||
if (!entryPath) {
|
||||
return false;
|
||||
}
|
||||
const modulePath = params.modulePath ?? fileURLToPath(import.meta.url);
|
||||
const resolveRealPath = params.realpathSync ?? realpathSync;
|
||||
try {
|
||||
return resolveRealPath(entryPath) === resolveRealPath(modulePath);
|
||||
} catch {
|
||||
return pathToFileURL(entryPath).href === pathToFileURL(modulePath).href;
|
||||
}
|
||||
}
|
||||
|
||||
if (isDirectPostinstallInvocation()) {
|
||||
runBundledPluginPostinstall();
|
||||
}
|
||||
|
||||
@@ -204,6 +204,24 @@ function resolveGlobalRoot(prefixDir: string, cwd: string): string {
|
||||
}).trim();
|
||||
}
|
||||
|
||||
export function createPackedBundledPluginPostinstallEnv(
|
||||
env: NodeJS.ProcessEnv = process.env,
|
||||
): NodeJS.ProcessEnv {
|
||||
return {
|
||||
...env,
|
||||
OPENCLAW_DISABLE_BUNDLED_ENTRY_SOURCE_FALLBACK: "1",
|
||||
OPENCLAW_EAGER_BUNDLED_PLUGIN_DEPS: "1",
|
||||
};
|
||||
}
|
||||
|
||||
function runPackedBundledPluginPostinstall(packageRoot: string): void {
|
||||
execFileSync(process.execPath, [join(packageRoot, "scripts/postinstall-bundled-plugins.mjs")], {
|
||||
cwd: packageRoot,
|
||||
stdio: "inherit",
|
||||
env: createPackedBundledPluginPostinstallEnv(),
|
||||
});
|
||||
}
|
||||
|
||||
function runPackedBundledChannelEntrySmoke(): void {
|
||||
const tmpRoot = mkdtempSync(join(tmpdir(), "openclaw-release-pack-smoke-"));
|
||||
try {
|
||||
@@ -216,6 +234,7 @@ function runPackedBundledChannelEntrySmoke(): void {
|
||||
installPackedTarball(prefixDir, tarballPath, tmpRoot);
|
||||
|
||||
const packageRoot = join(resolveGlobalRoot(prefixDir, tmpRoot), "openclaw");
|
||||
runPackedBundledPluginPostinstall(packageRoot);
|
||||
execFileSync(
|
||||
process.execPath,
|
||||
[
|
||||
|
||||
Reference in New Issue
Block a user