Skip to content
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

Adding Workflow Caching Feature #32

Open
rcmlz opened this issue Nov 13, 2023 · 1 comment
Open

Adding Workflow Caching Feature #32

rcmlz opened this issue Nov 13, 2023 · 1 comment

Comments

@rcmlz
Copy link

rcmlz commented Nov 13, 2023

Just wondering if there is added value in enhancing this widely used and very handy workfow to cache the download of rakudo.

The aim would be to make workflows that use "setup-raku" more robust, efficient and faster, as setup-raku would always "deliver" (except on first time runs, as nothing is cached yet), preventing not needed downloads and work even when http://rakudo.org/ is offline or slow.

Here it is suggested, to reload on dependency changes only, so maybe only fetch when the calculated download URL changes (compared to the cached version) AND $URL is reachable AND download is finished in less than Timeout (e.g. 5 seconds)? In all other cases we stay with the cached version of rakudo.

Downloading rakudo 2023.10 from $URL

with e.g. $URL = http://rakudo.org/dl/rakudo/rakudo-moar-2023.10-02-macos-x86_64-clang.tar.gz

key: ${{ runner.os }}-${{ hash('$URL') }}

Maybe something is this direction?

@heyajulia
Copy link

GitHub might be doing this automatically. The first time I ran my workflow, it took 35 seconds to download and install Raku. I don't know how long it's cached for, but now it's nearly instantaneous.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants