Just ran into a somewhat similar issue (erlang deps didn’t seem to be cached) and in my case the problem was in not caching deps
folder after running mix compile
. This is important since rebar3
actually stores ebin
s in deps
, and in _build
mix only creates symlinks.
So, my approach before (which had the same problem as in OP):
# deps stage
- cache pull deps
- mix deps.get
- cache push deps
# compile stage
- cache pull deps, _build
- mix compile
- cache push _build
and my approach now:
# deps stage
- cache pull deps
- mix deps.get
- cache push deps
# compile stage
- cache pull deps, _build
- mix compile
- cache push deps, _build # <-- !!!