terraform/plugin/discovery
Martin Atkins 879899d434 plugin/discovery: plugin caching mechanism
For users that have metered or slow internet connections it is annoying
to have Terraform constantly re-downloading the same files when they
initialize many separate directories.

To help such users, here we add an opt-in mechanism to use a local
directory as a read-through cache. When enabled, any plugin download will
be skipped if a suitable file already exists in the cache directory. If
the desired plugin isn't in the cache, it will be downloaded into the
cache for use next time.

This mechanism also serves to reduce total disk usage by allowing
plugin files to be shared between many configurations, as long as the
target system isn't Windows and supports either hardlinks or symlinks.
2017-09-29 14:03:09 -07:00
..
test-fixtures plugin/discovery: plugin caching mechanism 2017-09-29 14:03:09 -07:00
testdata add test for signature mismatch 2017-06-21 16:17:34 -04:00
error.go plugin/discovery: sentinel error values for Get errors 2017-06-20 13:39:45 -07:00
find.go plugin/discovery: ignore non-files when discovering 2017-09-29 14:03:09 -07:00
find_test.go plugin/discovery: trim off .exe suffix when parsing filenames 2017-07-18 10:00:23 -07:00
get.go plugin/discovery: plugin caching mechanism 2017-09-29 14:03:09 -07:00
get_cache.go plugin/discovery: plugin caching mechanism 2017-09-29 14:03:09 -07:00
get_cache_test.go plugin/discovery: plugin caching mechanism 2017-09-29 14:03:09 -07:00
get_test.go plugin: Display version + source when initializing plugins 2017-08-15 19:29:13 +02:00
meta.go plugin/discovery: use go-version instead of semver 2017-06-09 14:03:59 -07:00
meta_set.go remove "~> 0.0" constraint suggestions 2017-06-16 16:25:36 -04:00
meta_set_test.go remove "~> 0.0" constraint suggestions 2017-06-16 16:25:36 -04:00
meta_test.go udpate to plugin name convention 2017-06-09 14:03:59 -07:00
requirements.go plugin/discovery: PluginRequirements can specify SHA256 digests 2017-06-09 14:03:59 -07:00
requirements_test.go plugin/discovery: PluginRequirements can specify SHA256 digests 2017-06-09 14:03:59 -07:00
signature.go add signature verification 2017-06-20 13:14:30 -04:00
version.go remove "~> 0.0" constraint suggestions 2017-06-16 16:25:36 -04:00
version_set.go sort constraints for consistent output 2017-06-09 14:03:59 -07:00
version_set_test.go rename some Constraints methods per code review 2017-06-09 14:03:59 -07:00
version_test.go Add Versions.Sort 2017-06-09 14:03:59 -07:00