Add a test for platform(exec_properties={"no-remote-exec": "true"})#22363
Add a test for platform(exec_properties={"no-remote-exec": "true"})#22363EdSchouten wants to merge 1 commit intobazelbuild:masterfrom
Conversation
4f1602a to
b8cf829
Compare
|
I absolutely understand and support the desire behind this, but adding a new exec-related attribute to I see that Theoretically, we're already copying data from While admittedly not as clear as your new attribute, and definitely harder to discover and use, this is much better for our future plans for platforms and exec platforms (in addition to Platform-Scoped Spawn Strategies, see the original Execution Platforms vs Strategies, and the discussions in #22000 and the discussion about Selectively Enabling Execution Platforms). Can you test out my suggestion, to see if it works? If it doesn't, and you can adapt your test from this PR, I can debug to figure out why it doesn't. |
|
As a side note, I am a bit surprised by the test failure you're seeing in CI, and I don't think it's related to your PR specifically. |
It checks for
|
Woah, interesting! It looks like I've just updated this PR to remove any code changes I made. I did leave the test case behind. Maybe it's good to merge that, to ensure that this behaviour is guaranteed going forward. |
Apparently platform(exec_properties) propagates to ctx.actions.run(execution_requirements). This means that it is possible to mark entire platforms as "no-remote-exec". Let's add some testing coverage for this, to make sure it continues to work going forward.
b8cf829 to
d4e1236
Compare
|
The trifecta of "exec properties", "exec info", and "exec requirements" are very confusing, and IMO we should collapse them into one set. To answer your question: an exec property with a "true-ish" value (like |
katre
left a comment
There was a problem hiding this comment.
Very happy to add this test and ensure the behavior stays. Thanks for writing this, and working through the options with me!
|
Actually, one more change: can you edit the title and description, before I put in the request to merge this? |
Done. Thanks! |
Apparently platform(exec_properties) propagates to ctx.actions.run(execution_requirements). This means that it is possible to mark entire platforms as "no-remote-exec".
Let's add some testing coverage for this, to make sure it continues to work going forward.