Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Wire up PathMapper in SpawnInputsExpander #19718

Closed

Conversation

fmeum
Copy link
Collaborator

@fmeum fmeum commented Oct 4, 2023

PathMappers rewrite paths in command lines to make them more cache friendly, which requires executor support to stage files at the rewritten paths. This commit wires up the PathMapper used by a given Spawn in SpawnInputsExpander, which takes care of this for inputs to Spawns executed in a sandbox or remotely.

Constructs specific to Blaze, filesets and archived tree artifacts, are not covered by this change.

An end-to-end test will be added in #18155, but requires #19718, #19719, and #19721.

Work towards #6526

@fmeum fmeum force-pushed the 6526-wire-up-spawninputsexpander branch from 8662630 to 333b562 Compare October 4, 2023 09:43
`PathMapper`s rewrite paths in command lines to make them more cache
friendly, which requires executor support to stage files at the
rewritten paths. This commit wires up the `PathMapper` used by a given
`Spawn` in `SpawnInputsExpander`, which takes care of this for inputs
to `Spawn`s executed in a sandbox or remotely.

Constructs specific to Blaze, filesets and archived tree artifacts, are
not covered by this change.

Work towards bazelbuild#6526
@fmeum
Copy link
Collaborator Author

fmeum commented Oct 4, 2023

cc @gregestren @aranguyen

@fmeum fmeum requested a review from tjgq October 4, 2023 10:56
@fmeum fmeum marked this pull request as ready for review October 4, 2023 10:56
@fmeum fmeum requested review from a team as code owners October 4, 2023 10:56
@fmeum fmeum requested review from sdtwigg, a team and aiuto and removed request for a team, sdtwigg and aiuto October 4, 2023 10:56
@github-actions github-actions bot added awaiting-review PR is awaiting review from an assigned reviewer team-Configurability Issues for Configurability team team-Performance Issues for Performance teams team-Remote-Exec Issues and PRs for the Execution (Remote) team labels Oct 4, 2023
@fmeum fmeum requested a review from tjgq October 5, 2023 13:20
Copy link
Contributor

@tjgq tjgq left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just one small nit on the tree artifact test, otherwise I think this is ready to be submitted.

@fmeum fmeum requested a review from tjgq October 5, 2023 14:41
@tjgq tjgq added awaiting-PR-merge PR has been approved by a reviewer and is ready to be merge internally and removed awaiting-review PR is awaiting review from an assigned reviewer labels Oct 5, 2023
@copybara-service copybara-service bot closed this in d262c7d Oct 5, 2023
@github-actions github-actions bot removed the awaiting-PR-merge PR has been approved by a reviewer and is ready to be merge internally label Oct 5, 2023
@fmeum fmeum deleted the 6526-wire-up-spawninputsexpander branch October 5, 2023 22:04
copybara-service bot pushed a commit that referenced this pull request Oct 9, 2023
`PathMapper`s rewrite paths in command lines to make them more cache friendly, which requires executor support to stage files at the rewritten paths. This commit wires up the `PathMapper` used by a given `Spawn` with sandbox outputs logic for sandboxed and worker sandboxed execution.

An end-to-end test will be added in #18155, but requires #19718, #19719, and #19721.

Work towards #6526

Closes #19719.

PiperOrigin-RevId: 571950903
Change-Id: I4a9d15da578da11f8677279b09e0864b8c33e9fc
copybara-service bot pushed a commit that referenced this pull request Oct 16, 2023
`PathMapper`s rewrite paths in command lines to make them more cache friendly, which requires executor support to stage files at the rewritten paths. This commit wires up the `PathMapper` used by a given `Spawn` in `RemoteExecutionService`, which ensures that paths of inputs and outputs are correctly mapped before being sent off to the remote executor and mapped back to the correct local paths when downloading the results.

An end-to-end test will be added in #18155, but requires #19718, #19719, and #19721.

Work towards #6526

Closes #19721.

PiperOrigin-RevId: 573806130
Change-Id: Ibbd4ff641eb301d78f5ec54813e65788d786fcea
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
team-Configurability Issues for Configurability team team-Performance Issues for Performance teams team-Remote-Exec Issues and PRs for the Execution (Remote) team
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants