Summary
The user is seeking advice on managing Continuous Integrations (CIs) and cache in Golang, specifically mentioning their experience with running Earthly on GitHub Actions runners, which results in no caches and the need to download dependencies repeatedly.
kieran.mann
that leaves the issue of how you host the satellite (pay earthly for hosting and get auto-sleep/wake or self-host and pay for the infrastructure 24/7)
kieran.mann
you can launch your earthly satellite as a github runner: https://docs.earthly.dev/earthly-cloud/satellites/gha-runners
maxence
I had a setup with physical machines that was always identical to take advantage of the cache. But it's not really very scalable
ingwar
but yes.. with earthly its not easy without external service..
ingwar
You didnt said anything about earthly :slightly_smiling_face:
maxence
<@U02P31BPR6X> What does Earthly have to do with it? If I end up doing CI outside Earthly again, I'll lose a lot.
<@U07KG62GVGR> This is also a possibility, but I find it less elegant than having everything on Github Action.
sloury
In my mind, using an action looses the advantage of having build instructions that are the same between your machine and the CI. To deal with the cache, I went the easy and connected earthly to an earthly cloud satellite (for 35$/month). But I suggest you try to do the same thing than action/setup-go, using CACHE in earthly and cache in github action
ingwar
If you would do setup-go it should cache everything for you..
uses: actions/setup-go@v4
with:
go-version: '1.22'```
maxence
Hello,
How do you manage your CIs and the cache (Golang for me)? Today, I run earthly on github actions runners, and I end up with 0 caches, so I download all my dependencies all the time.