From b6164bf363e4c5f875efdce27f74dcbfe5b4f614 Mon Sep 17 00:00:00 2001 From: Neil Date: Fri, 18 Sep 2026 19:56:10 -0700 Subject: [PATCH] ci: include mobile dependency action for adhoc builds --- .../install-mobile-dependencies/action.yml | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 .github/actions/install-mobile-dependencies/action.yml diff --git a/.github/actions/install-mobile-dependencies/action.yml b/.github/actions/install-mobile-dependencies/action.yml new file mode 100644 index 00000000000..0ed2b45bb9a --- /dev/null +++ b/.github/actions/install-mobile-dependencies/action.yml @@ -0,0 +1,22 @@ +name: Install mobile dependencies +description: Frozen pnpm install for the mobile/ project, whose node_modules the mobile web bundle build and the mobile-aware lint passes resolve React Native and Expo from. + +runs: + using: composite + steps: + # Why a separate install: mobile is its own pnpm project, so the root install leaves + # mobile/node_modules empty and every mobile import resolves to nothing. + # Why no --ignore-scripts, unlike the root install: mobile's postinstall generates the + # gitignored terminal/mermaid webview engine modules that tracked source imports. + # The drift guard mirrors the root install so a stale mobile lockfile fails by name -- + # mobile's lockfile carries patchedDependencies that a silent rewrite would drop. + - name: Install mobile dependencies + shell: bash + working-directory: mobile + run: | + pnpm install --frozen-lockfile + # Job containers can run composite steps from a source mirror without .git. + if [ "$(git -C "$GITHUB_WORKSPACE" rev-parse --is-inside-work-tree 2>/dev/null)" = true ]; then + git -C "$GITHUB_WORKSPACE" diff --exit-code -- \ + mobile/package.json mobile/pnpm-lock.yaml mobile/pnpm-workspace.yaml + fi