-
Notifications
You must be signed in to change notification settings - Fork 61
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CI: Use caching actions from godot-cpp #80
base: main
Are you sure you want to change the base?
Conversation
102b934
to
7734d16
Compare
Do we need to switch to 2 separate actions to fix this issue? I thought it would be enough to give the cache action we currently use a key based on the current commit ID? |
No. Giving the cache a unique key, requires fuzzy matching on the restore. Otherwise caches won't ever be used. |
The |
Oh yeah true. We could still use the "composite" actions/cache. That one takes the restore-keys too. But why duplicate the behavior when we can use the existing ones from godot-cpp? Having a separate save action also enables you to save the cache before the "Delete Windows Compilation Files" step. Maybe that's useful. You could also enable the action to save the cache even if the build action fails by setting |
In our case, it's not so relevant, but it does become relevant if you're doing things after the main build. |
I quickly looked through the two actions used for this PR (in godot-cpp). |
They are a lot more verbose than what I did in my project. That's the only thing that bothers me. Its a bit overkill but perhaps required for godot-cpp. |
This PR switches out the existing cache step with the
godot-cache-restore
andgodot-cache-save
actions from godot-cpp. These actions have a different scheme for the cache keys. They create a new cache for every commit by appending - among other things - the commit SHA, but restore from any key that matches up until the unique identifier. Using this approach fixes the caches not being updatable.A few notes: