From 9ce89c57c553618fdce32883bcc56cb9bc8ed6c8 Mon Sep 17 00:00:00 2001 From: Sampark Sharma Date: Mon, 26 Dec 2022 10:54:30 +0000 Subject: [PATCH] Add docs for cross os cache compatibility --- README.md | 1 + tips-and-workarounds.md | 8 +++++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 7b0293f..2218603 100644 --- a/README.md +++ b/README.md @@ -246,6 +246,7 @@ Following are some of the known practices/workarounds which community has used t - [Update a cache](./tips-and-workarounds.md#update-a-cache) - [Use cache across feature branches](./tips-and-workarounds.md#use-cache-across-feature-branches) - [Force deletion of caches overriding default cache eviction policy](./tips-and-workarounds.md#force-deletion-of-caches-overriding-default-cache-eviction-policy) +- [Cross OS cache](./tips-and-workarounds.md#cross-os-cache) #### Windows environment variables Please note that Windows environment variables (like `%LocalAppData%`) will NOT be expanded by this action. Instead, prefer using `~` in your paths which will expand to HOME directory. For example, instead of `%LocalAppData%`, use `~\AppData\Local`. For a list of supported default environment variables, see [this](https://docs.github.com/en/actions/learn-github-actions/environment-variables) page. diff --git a/tips-and-workarounds.md b/tips-and-workarounds.md index ac541d8..8636c2f 100644 --- a/tips-and-workarounds.md +++ b/tips-and-workarounds.md @@ -62,4 +62,10 @@ jobs: env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} ``` - \ No newline at end of file + + +## Cross OS cache +From `v3.2.1` cache is cross os compatible. This means that a cache created on `ubuntu-latest` can be used by `windows-latest` and vice versa. This is useful when you want to cache dependencies which is available on different the OSs. This will help reduce the consumption of the cache quota. Things to keep in mind: +- Only cache those files which are compatible across OSs. +- Don't cache symlinks as they work differently on different OSs so would cause issues during cache restore. +- Put runner OS in the cache key if that cache is not ment to be used across OSs. \ No newline at end of file