Builds using local build cache do not recognize changed dependencies
Closed this issue · 0 comments
Bug description
We are building gitpod for arm64. We use leeway. Whenever we change things in dependency components (like gitpod-db:lib or gitpod-protocol:lib), leeway builds the changes in those dependency components, but then gives the depender components the old built version from the cache instead of the newly built version.
Steps to reproduce
Set LEEWAY_BUILD_DIR and LEEWAY_CACHE_DIR to local paths, and disable remote cache.
Using gitpod-io/gitpod repo:
leeway build component/server:app
This should build.
Now, go into components/gitpod-db and change the name of any function relied on by server. E.g. search and replace "findRunningInstance(" with "findRunningInstanceX(" in gitpod/components/gitpod-db/src/workspace-db.ts
Now run leeway build component/server:app again.
Leeway notes that gitpod-db needs to rebuild, and rebuilds it. However, when it builds server:app, it builds it with old version of gitpod-db
Expected behavior
No response
Example repository
No response
Anything else?
I don't think this is an arm issue. We get it on x86 builds too