Action fails on Node 24 default runner: "(0 , util_1.isNullOrUndefined) is not a function
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 52/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- azure, github-actions, node.js, typescript
Research direction
Start by reproducing the action startup failure on a Node 24 GitHub-hosted runner with the load test configuration shown. Inspect the action's bundled dependencies for the removed util.isNullOrUndefined call, then verify the action runs successfully with the listed standard configuration on Node 24. Done means both v1.2.1 and v1.2.5 failure paths are addressed without requiring the Node 20 workaround.
Written by the indexing model from the issue text.
Description
Describe the bug
The action crashes with a TypeError when GitHub Actions runners default to Node 24,
which is now the standard runtime since GitHub's Node 20 deprecation rollout.
Error:
Error: (0 , util_1.isNullOrUndefined) is not a function
This happens because util.isNullOrUndefined was removed in Node 24, and the
action's bundled dependencies still call it.
To Reproduce
-
Use a GitHub Actions runner defaulting to Node 24 (current default as of mid-2026)
-
Run the action with a standard load test config:
- name: Run Azure Load Test
uses: azure/load-testing@v1.2.5
with:
loadTestConfigFile: loadtest-config.yaml
loadTestResource:
resourceGroup:
waitForCompletion: true
env:
USRNAME: ***
PASSWORD: ***
TEST_ID_CONFIG:
- name: Run Azure Load Test
-
Observe the crash immediately on action startup
Expected behavior
The action should run successfully on Node 24, matching the runner's default.
Workaround
Setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true in the step's env forces
the runner back to Node 20, which avoids the crash — but this is only a temporary
option since GitHub is fully removing Node 20 support later in 2026:
https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Versions tested
- v1.2.1 — fails
- v1.2.5 (latest) — fails identically
Environment
- GitHub-hosted runner (ubuntu-latest)
- Node 24 (runner default)
- Dominant language
- TypeScript
- Stars
- 20
- Forks
- 27
- Avg merge
- 6d 16h
- Merged PRs (30d)
- 8
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from Azure/load-testing
-
Upgrade to node 24 Openneed-to-triage
Azure/load-testing#162 · 6 comments · 1 reaction · 1 assignee ·
-
need-to-triage
Azure/load-testing#142 · 1 assignee ·
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
Azure/load-testing#48 · 2 comments ·
-
need-to-triage
Azure/load-testing#47 · 1 assignee ·
-
need-to-triage
Azure/load-testing#46 · 1 assignee ·
All issues in Azure/load-testing
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
copse-dev/agent-pane#2953 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Eynzof/Hermes-CN-Desktop#610 ·
-
bug clawsweeper:linked-pr-open clawsweeper:needs-live-repro clawsweeper:no-new-fix-pr impact:message-loss issue-rating: 🐚 platinum hermit P2 regression
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
calcite-components needs triage refactor
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
Esri/calcite-design-system#15203 ·