-
Notifications
You must be signed in to change notification settings - Fork 19
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
preinstall terraform providers into tfcache to avoid concurrent writes at runtime #63
Comments
trying to handle this automatically is tricky, we do lock files around create, destroy when running w/ xdist, but thats around a given terraform fixture name, but a given fixture maps 1 to m on providers, and we don't know apriori all the providers. brainstorming options
|
it doesn't appear controller node does any collection, so an alternate thought is we just try a initialization lock in a worker, and run through init on all the fixtures. but we'll need to synchronize with the other workers, possibly via the lock timeout. |
a bit more research, I think we just need to drop the shared plugin cache dir when using xdist. |
given the behavior I'm seeing in 1.5, where one terraform init's provider download doesn't suffice for another root module, we probably just need to nuke it entirely. this does mean lots of extraneous downloads :/ but we should ask terraform to support this use case better directly. |
else xdist concurrency can result in text busy file error while one worker is downloading and another is concurrently executing the provider.
The text was updated successfully, but these errors were encountered: