Sometimes it is necessary to nuke the cached checkout for a given builder. On Buildbot, most builders had a dedicated slave, making it easy to just SSH into the bot and run "rm -rf /b/build/slave/<builder_name>". In LUCI/swarming, builders are sharing many slaves from the pool and therefore deleting the cache may require SSHing into 100s of bots. It would therefore be nice to be able to tell swarming to delete a cache with a given name on all bots, e.g. builder_a8e098fc7a0bccbb4e4cd076d4f30e1e4c708aad5a6c7f7ad9ab46a69376587c_v2:cache/builder. Then CLs like this one won't be necessary.
Sometimes it is necessary to nuke the cached checkout for a given builder. On Buildbot, most builders had a dedicated slave, making it easy to just SSH into the machine and run "rm -rf /b/build/slave/<builder_name>". In LUCI/swarming, builders are sharing many bots from the pool and therefore deleting the cache may require SSHing into 100s of machines. It would therefore be nice to be able to tell swarming to delete a cache with a given name on all bots, e.g. builder_a8e098fc7a0bccbb4e4cd076d4f30e1e4c708aad5a6c7f7ad9ab46a69376587c_v2:cache/builder. Then CLs like this one won't be necessary.
Sometimes it is necessary to nuke the cached checkout for a given builder. On Buildbot, most builders had a dedicated slave, making it easy to just SSH into the machine and run "rm -rf /b/build/slave/<builder_name>". In LUCI/swarming, builders are sharing many bots from the pool and therefore deleting the cache may require SSHing into 100s of machines. It would therefore be nice to be able to tell swarming to delete a cache with a given name on all bots, e.g. builder_a8e098fc7a0bccbb4e4cd076d4f30e1e4c708aad5a6c7f7ad9ab46a69376587c_v2:cache/builder. Then CLs like this one won't be necessary: https://crrev.com/c/1127363.
We discussed this issue at length and we decided that the officially supported way to do this is to append "_vN" suffix to the cache name.
The rationale is that tasks will be retried or run out of order (e.g. findit, bisect, manual retry, even if accidental), so once a task ran, there's no way to not have it run again.
If having the task running again permanently hose a cache, it's better to just let the cache go.
The only certain way to do so is to rename the cache, hence the "_vN" suffix convention.
Most of the time, this can be done at the buildbucket configuration level without recipe change.
Comment 1 by serg...@chromium.org
, Jul 6