This does not work as intended. PR runs download the file over and over again.
The core issue is that PR branches are only allowed to access their own cache or their parent branch's cache, see the docs. Even though the cache key is equal, PRs do not use the cache that other PRs have created.
From the documentation, it does seem like moving cache creation to the parent branch (master) should resolve this issue. This would change our workflow(s) as follows:
Create an action on the master branch to download and save@v4 the cache_libsodium_dll cache. The cache lifetime is 7 days, so this should probably be a CRON action that downloads every three days (allowing one retrieval to fail).
Remove saving from the PR unittest workflow. This apparently does nothing useful.
Currently, our testing infrastructure restores and saves caches for the
libsodium.dll
file so that it doesn't need to be downloaded every PR run.https://github.com/Tribler/py-ipv8/blob/80b3544d9bdc2b332e489808a67dfc351a6936e6/.github/workflows/unittests.yml#L23-L35
This does not work as intended. PR runs download the file over and over again.
The core issue is that PR branches are only allowed to access their own cache or their parent branch's cache, see the docs. Even though the cache key is equal, PRs do not use the cache that other PRs have created.
From the documentation, it does seem like moving cache creation to the parent branch (
master
) should resolve this issue. This would change our workflow(s) as follows:master
branch to download andsave@v4
thecache_libsodium_dll
cache. The cache lifetime is 7 days, so this should probably be a CRON action that downloads every three days (allowing one retrieval to fail).