fix(core): set consistent working directory when calculating runtime hash inputs #18643
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Current Behavior
Runtime hash inputs inherit the parent process's current working directory. This can cause them to fail if they utilize any relative paths.
Consider for instance, a runtime input that consists of
node ./tools/calculate-local-env.js
If you are cd'd into a project's root instead of the workspace root, this would fail since the path is meant to be relative to the workspace root.
Here's an example in this repo, if adding a runtime input of
cat README.md
to the lint target and running in thepackages
directory:It's also worth noting that this behavior also is inconsistent between if the daemon is enabled or disabled, since when hashing on the daemon the cwd is already workspaceRoot, since the daemon's cwd is workspaceRoot
Expected Behavior
Runtime inputs behave in a consistent manner
Related Issue(s)
Fixes #