amazon-ecr-credential-helper icon indicating copy to clipboard operation
amazon-ecr-credential-helper copied to clipboard

[Carry #208] Use the XDG Basedir Spec for the cache

Open samuelkarp opened this issue 3 years ago • 0 comments

Issue #, if available: Fixes #205 Carries #208 (from @WhyNotHugo)

Description of changes: Currently, for caching data, a new directory is created in the current user's home directory. This is bad practice (if all apps just dump files into the user's home, it becomes somewhat unmaintainable).

The XDG Basedir Specification covers this pretty neatly; the cache directory for all applications is configurable via the XDG_CACHE_HOME variable, and falls back to ~/.cache if unset.

The os.UserCacheDir function returns the per-platorm cache dir, since the XDG-Basedir is *nix-specific (except macOS).

This changeset makes the cache for all applications live in one single location, rather that littering the user's home.

Testing:

Manual testing covers the behavior when ~/.ecr exists and when it does not.

  • [x] Linux
  • [ ] Windows
  • [ ] MacOS

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

samuelkarp avatar Dec 22 '20 19:12 samuelkarp