You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Restoring and saving the gocache seems to interfere with `pkg-config`.
In the future, we can try to build `pkg-config` in a way where this
doesn't happen, but we don't get a lot of benefit from restoring the
gocache anyway so there isn't a lot of reason to save it.
The problem is that go will run `pkg-config --libs` to obtain the
library linker flags when it compiles the static library for a
dependency. When it links the final binary, it then uses the libraries
saved from that invocation. It caches this output inside of the gocache
and doesn't rerun it unless the package changes.
This causes a unique problem for CI. CI will save the gocache which
contains the build artifact from the go build, but when building flux
locally, it doesn't contain the static libraries that were created by
`pkg-config`. We then run CI again and restore the go build cache. Now,
the library is gone because it was kept in the repository and is no
longer present, but the build cache entry still exists and it doesn't
rerun `pkg-config`.
Since the gocache causes us more trouble than it saves, this eliminates
restoring and saving the gocache. We can fix the underlying problem in
`pkg-config` later at our discretion.
do not restore or save the cache
this may interfere with pkg-config.
ignore the pkg-config log for git
eliminate restoring and saving the go cache
0 commit comments