mirror of
https://github.com/facebook/proxygen.git
synced 2025-08-08 18:02:05 +03:00
Fetch source archive if cached artifact's built_marker is missing (#4035)
Summary:
X-link: https://github.com/facebookincubator/velox/pull/4035
If getdeps finds a cached build artifact, it currently skips fetching the
source archive, which is done by calling `fetcher.update()`:
https://www.internalfb.com/code/fbsource/[f64171219e95f47c81929cde0a09e720e079dd31]/fbcode/opensource/fbcode_builder/getdeps.py?lines=691
But without the built_marker, the script will still create a builder for the
artifact:
https://www.internalfb.com/code/fbsource/[f64171219e95f47c81929cde0a09e720e079dd31]/fbcode/opensource/fbcode_builder/getdeps.py?lines=600
This then fails when the builder tries to extract the missing source archive.
In Boost's case:
https://www.internalfb.com/code/fbsource/[f64171219e95f47c81929cde0a09e720e079dd31]/fbcode/opensource/fbcode_builder/getdeps/builder.py?lines=1021
This logic seems to have been broken for a while, but became a problem after
watchman's Windows build started finding cached boost and ninja artifacts that
were missing the built_marker, presumably uploaded by other projects as a
result of D42996394 (db79e34cc7
).
This change fixes the broken watchman build, but itself doesn't get us back to
using cached artifacts.
Reviewed By: kmancini
Differential Revision: D43260530
fbshipit-source-id: ac0072f213a534aada4046d34fe090510fc5d618
This commit is contained in:
committed by
Facebook GitHub Bot
parent
738d1d47ab
commit
47dde7c249
@@ -688,7 +688,10 @@ class BuildCmd(ProjectCmdBase):
|
||||
):
|
||||
reconfigure = False
|
||||
sources_changed = False
|
||||
if not cached_project.download():
|
||||
if cached_project.download():
|
||||
if not os.path.exists(built_marker):
|
||||
fetcher.update()
|
||||
else:
|
||||
check_fetcher = True
|
||||
if os.path.exists(built_marker):
|
||||
check_fetcher = False
|
||||
|
Reference in New Issue
Block a user