New issue
Advanced search Search tips

Issue 811411 link

Starred by 1 user

Issue metadata

Status: Available
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Mac
Pri: 2
Type: Feature

Blocked on:
issue 808836



Sign in to add a comment

Swarming should make $HOME a per-task temporary folder

Project Member Reported by iannucci@chromium.org, Feb 12 2018

Issue description

Issue: some tools (like vpython) pick a default cache directory of $HOME/<something>. Currently swarming bots don't isolate this per-task, which means that we could have some 'hidden state' which affects the reproducibility of the task.

If tasks SHOULD share state, we have named caches for that. Otherwise this hidden coupling could definitely impact correctness/speed/debuggability of tasks (e.g. if vpython cache was corrupted it could spill into many tasks but go hidden because it's not a shared cache).

My proposal would be to have the swarming bot pick a task subdirectory (maybe .../h) and assign that value to $HOME when running the task. This directory would get cleaned like the rest of the task dirs and prevent accidental coupling.
 
This was prompted by  Issue 807798 . The correct behavior there would have been to observe vpython being slow and then add a cache, rather than having it work quickly and realizing the cache was in the incorrect place.
Cc: vadimsh@chromium.org
+vadim too. One thing I think this may impact are puppet-deployed config files (like .gitconfig)... I don't /think/ credentials are deployed here still, but we may still be relying on e.g. gitcookies.

A way to mitigate this would be to have bots.cfg explicitly list the file(s) to copy from real HOME to the per-task home. I think in general we are trying to move away from deployed-in-$HOME stuff, but maybe there's a reason we should keep this unrestricted?

Comment 3 by mar...@chromium.org, Feb 21 2018

Blockedon: 808836
Status: Available (was: Untriaged)
Blocking on issue 808836, as I think this fits with the story of defining a containment story.
Labels: OS-Linux OS-Mac OS-Windows

Sign in to add a comment