appsignal / appsignal-elixir

🟪 AppSignal for Elixir package
https://www.appsignal.com/elixir
MIT License
284 stars 82 forks source link

CI performance regression with Erlang/OTP 26 #859

Closed unflxw closed 1 year ago

unflxw commented 1 year ago

Erlang/OTP 26 is being built from source every time, on every job that uses it.

Some logic to cache Elixir builds already exists. Perhaps the artifacts at ~/.kerl/ could be cached similarly to the ones at ~/.kiex/.

Timebox: 1 day. We can live with the performance regression if not, as it only adds around two minutes to CI runs on average. It's also likely to be solved magically in the near future, as Semaphore will add Erlang/OTP 26 to their CDN eventually.

tombruijn commented 1 year ago

This will get automatically fixed in a month or two, when Semaphore does their monthly update thing.

Timebox: 1 day.

It's only adding another path to cache, right? Takes an hour, maybe two, waiting for builds. That's something I'd be willing to do now.

unflxw commented 1 year ago

Go for it @tombruijn!

Whether it's a couple hours or more will depend, I think, on how friendly kerl artifacts are to being cached, and whether we can keep using sem-version erlang to get the versions that don't need building from source.

I recall that I found it useful, when doing the kiex caching, to look at what sem-version was doing under the hood. The scripts are up somewhere on Semaphore's GitHub.