padok-team / burrito

🌯 Burrito is a TACoS 🌮
https://padok-team.github.io/burrito
Apache License 2.0
238 stars 9 forks source link

Feature Suggestion - Burrito Runner Integration with Terraform Shared Cache on S3 #224

Closed LucasMrqes closed 3 months ago

LucasMrqes commented 6 months ago

When managing numerous layers with Burrito, users may encounter high network traffic volume from downloading Terraform plugins. Terraform offers a solution to reduce the volume of plugin downloads by enabling the sharing of caches between layers on a local machine, as detailed in this blog post: Terraform Plugin Caching.

It would be great if there was an option for Burrito runners to seamlessly download the contents of a Terraform shared cache stored on Amazon S3 and update its content after its plan / apply operation. What do you think about it ?

Alan-pad commented 6 months ago

I think we can introduce a network_mirror in the upcoming datastore API to reduce this network overhead, however I do not think this should be handled by the runner, this will require a bit of dev if we want to support it with Burrito. I think it's possible to introduce it without Burrito though using this project : https://github.com/straubt1/terraform-network-mirror . The implementation we would have on Burrito' side would be more of a cache compared to the mirror project I linked to you