commit a72d1b1d5515e0622a90a6f1658583e08e3376d1
parent dfe3a3c9d10fd4f60c2c6b4ccbbbee5c44cfe928
Author: Florian Dold <dold@taler.net>
Date: Mon, 17 Aug 2026 16:26:28 +0200
taler-harness: explain missing Selenium dependency, add target
Diffstat:
3 files changed, 12 insertions(+), 4 deletions(-)
diff --git a/Makefile b/Makefile
@@ -119,6 +119,10 @@ install-tools:
$(MAKE) -C packages/anastasis-cli install-nodeps
$(MAKE) -C packages/taler-harness install-nodeps
+.PHONY: install-selenium
+install-selenium:
+ $(MAKE) -C packages/taler-harness install-selenium
+
.PHONY: gana
gana:
./contrib/gana_update.sh
diff --git a/packages/taler-harness/Makefile b/packages/taler-harness/Makefile
@@ -24,7 +24,7 @@ else
BINDIR = $(prefix)/bin
LIBDIR = $(prefix)/lib/taler-harness
NODEDIR = $(LIBDIR)/node_modules/taler-harness
-.PHONY: install deps install-nodeps
+.PHONY: install deps install-nodeps install-selenium
install-nodeps:
./build.mjs
install -d $(DESTDIR)$(BINDIR)
@@ -42,6 +42,8 @@ install-nodeps:
cp -RL node_modules/playwright-core $(DESTDIR)$(NODEDIR)/node_modules/; \
fi
ln -sf ../lib/taler-harness/node_modules/taler-harness/bin/taler-harness.mjs $(DESTDIR)$(BINDIR)/taler-harness
+install-selenium:
+ npm install --prefix $(DESTDIR)$(NODEDIR) --no-save --omit=dev --ignore-scripts selenium-webdriver@4.40.0
deps:
pnpm install --frozen-lockfile --filter @gnu-taler/taler-harness...
pnpm run --filter @gnu-taler/taler-harness... build
diff --git a/packages/taler-harness/src/harness/environments.ts b/packages/taler-harness/src/harness/environments.ts
@@ -106,9 +106,11 @@ function seleniumLoadError(error: unknown): Error {
"Unable to load selenium-webdriver. Browser integration tests require " +
"this module. From the taler-typescript-core checkout, run " +
"`pnpm install --filter @gnu-taler/taler-harness...` and rebuild the " +
- "harness. For a standalone installation, run " +
- "`npm install selenium-webdriver@4.40.0` in the harness Node.js " +
- "installation directory",
+ "harness. For an installed harness, run `make install-selenium` after " +
+ "configuring with the " +
+ "same prefix, or install it directly below " +
+ "`$PREFIX/lib/taler-harness/node_modules/taler-harness` with npm. " +
+ "Use the same prefix that was passed to configure.",
{ cause: error },
);
}