|
|
@@ -0,0 +1,28 @@
|
|
|
+#!/usr/bin/env bash
|
|
|
+set -euo pipefail
|
|
|
+
|
|
|
+root=$(mktemp -d)
|
|
|
+cleanup() { rm -rf "$root"; }
|
|
|
+trap cleanup EXIT
|
|
|
+
|
|
|
+package="$root/package"
|
|
|
+external_dist="$root/relocated-dist"
|
|
|
+mkdir -p "$package/bin" "$package/node_modules/launcher-probe" "$external_dist/cli"
|
|
|
+cp bin/qmd "$package/bin/qmd"
|
|
|
+touch "$package/package-lock.json"
|
|
|
+ln -s "$external_dist" "$package/dist"
|
|
|
+
|
|
|
+cat >"$package/node_modules/launcher-probe/package.json" <<'JSON'
|
|
|
+{"name":"launcher-probe","type":"module","exports":"./index.js"}
|
|
|
+JSON
|
|
|
+cat >"$package/node_modules/launcher-probe/index.js" <<'JS'
|
|
|
+export const marker = 'symlinked-dist-dependency-resolved';
|
|
|
+JS
|
|
|
+cat >"$external_dist/cli/qmd.js" <<'JS'
|
|
|
+import { marker } from 'launcher-probe';
|
|
|
+console.log(marker);
|
|
|
+JS
|
|
|
+
|
|
|
+output=$("$package/bin/qmd" --version)
|
|
|
+test "$output" = 'symlinked-dist-dependency-resolved'
|
|
|
+printf 'launcher symlinked-dist dependency resolution: OK\n'
|