You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
| Only JS actions change | All | None | Yes | Yes |
51
+
| Only widget `src`/deps change | Changed only | Changed only | No | No |
52
+
| Only widget `e2e/` changes | None (use baseline) | Changed only | No | No |
53
+
| Both widgets and JS actions | Build-affected widgets | Changed widgets | Yes | Yes |
54
+
| Full run (`*-native` / default) | All | All | Yes | Yes |
55
+
| Manual: `js-actions`| All | None | Yes | Yes |
33
56
34
57
### Why build all widgets when only JS actions change?
35
58
36
-
The JS action tests run against a full test project that requires all widgets to be present. Without building all widgets, the test project would be incomplete and tests would fail.
59
+
The JS action tests run against a full test project that requires all widgets to be
60
+
present. Without building all widgets, the test project would be incomplete and tests
61
+
would fail.
37
62
38
63
## Other Scripts
39
64
40
-
-**determine-nt-version.py** - Determines the Native Template version based on Mendix version
41
-
-**mxbuild.Dockerfile** - Docker image for mxbuild
42
-
-**setup-runtime.sh** - Sets up the Mendix runtime
43
-
-**start-runtime-with-verification.sh** - Starts the runtime with health verification
65
+
-**determine-nt-version.mjs** — resolves the Native Template release/branch from the
66
+
Mendix version. Node ESM, no external deps (uses global `fetch` + a small version
67
+
comparator); run with the runner's preinstalled `node`. Fails loudly rather than
68
+
silently pinning `master`.
69
+
-**mxbuild.Dockerfile** — Docker image for mxbuild.
70
+
71
+
> The Mendix runtime for the test jobs is produced as a **portable app package**
72
+
> (`mxbuild --target=portable-app-package`) in the `project` job and started by the
73
+
> `start-mendix-runtime` composite action, which waits for a real readiness probe.
74
+
> That runtime runs under a 6-user trial license, so the action shortens the server
75
+
> session idle timeout (`RUNTIME_PARAMS_SESSIONTIMEOUT`) — each Maestro flow opens a
76
+
> fresh session via `launchApp clearState`, and a short timeout lets them expire
77
+
> between flows instead of piling up past the cap.
0 commit comments