mirror of
https://github.com/facebook/proxygen.git
synced 2025-08-08 18:02:05 +03:00
getdeps: support GETDEPS_WGET_ARGS in wget version, support skipping lfs/upload steps
Summary: X-link: https://github.com/facebookincubator/katran/pull/229 X-link: https://github.com/facebookexperimental/edencommon/pull/18 X-link: https://github.com/facebook/sapling/pull/878 X-link: https://github.com/facebook/openr/pull/154 X-link: https://github.com/facebook/folly/pull/2177 X-link: https://github.com/facebookincubator/zstrong/pull/748 I found it useful to be able to set `GETDEPS_WGET_ARGS` to change some of the flags to `wget` while it's in that fetch mode :) I also need to skip the lfs upload part in my environment Reviewed By: mackorone Differential Revision: D56263907 fbshipit-source-id: ae45c31ebb10123e0358544d294fe2f2979dd59a
This commit is contained in:
committed by
Facebook GitHub Bot
parent
b84f146bfc
commit
220ffee5db
@@ -561,6 +561,10 @@ class BuildCmd(ProjectCmdBase):
|
|||||||
for m in projects:
|
for m in projects:
|
||||||
fetcher = loader.create_fetcher(m)
|
fetcher = loader.create_fetcher(m)
|
||||||
|
|
||||||
|
if args.build_skip_lfs_download and hasattr(fetcher, "skip_lfs_download"):
|
||||||
|
print("skipping lfs download for %s" % m.name)
|
||||||
|
fetcher.skip_lfs_download()
|
||||||
|
|
||||||
if isinstance(fetcher, SystemPackageFetcher):
|
if isinstance(fetcher, SystemPackageFetcher):
|
||||||
# We are guaranteed that if the fetcher is set to
|
# We are guaranteed that if the fetcher is set to
|
||||||
# SystemPackageFetcher then this item is completely
|
# SystemPackageFetcher then this item is completely
|
||||||
@@ -652,7 +656,11 @@ class BuildCmd(ProjectCmdBase):
|
|||||||
|
|
||||||
# Only populate the cache from continuous build runs, and
|
# Only populate the cache from continuous build runs, and
|
||||||
# only if we have a built_marker.
|
# only if we have a built_marker.
|
||||||
if args.schedule_type == "continuous" and has_built_marker:
|
if (
|
||||||
|
not args.skip_upload
|
||||||
|
and args.schedule_type == "continuous"
|
||||||
|
and has_built_marker
|
||||||
|
):
|
||||||
cached_project.upload()
|
cached_project.upload()
|
||||||
elif args.verbose:
|
elif args.verbose:
|
||||||
print("found good %s" % built_marker)
|
print("found good %s" % built_marker)
|
||||||
@@ -1322,11 +1330,28 @@ def parse_args():
|
|||||||
action="store_true",
|
action="store_true",
|
||||||
default=False,
|
default=False,
|
||||||
)
|
)
|
||||||
|
add_common_arg(
|
||||||
|
"-su",
|
||||||
|
"--skip-upload",
|
||||||
|
help="skip upload steps",
|
||||||
|
action="store_true",
|
||||||
|
default=False,
|
||||||
|
)
|
||||||
add_common_arg(
|
add_common_arg(
|
||||||
"--lfs-path",
|
"--lfs-path",
|
||||||
help="Provide a parent directory for lfs when fbsource is unavailable",
|
help="Provide a parent directory for lfs when fbsource is unavailable",
|
||||||
default=None,
|
default=None,
|
||||||
)
|
)
|
||||||
|
add_common_arg(
|
||||||
|
"--build-skip-lfs-download",
|
||||||
|
action="store_true",
|
||||||
|
default=False,
|
||||||
|
help=(
|
||||||
|
"Download from the URL, rather than LFS. This is useful "
|
||||||
|
"in cases where the upstream project has uploaded a new "
|
||||||
|
"version of the archive with a different hash"
|
||||||
|
),
|
||||||
|
)
|
||||||
|
|
||||||
ap = argparse.ArgumentParser(
|
ap = argparse.ArgumentParser(
|
||||||
description="Get and build dependencies and projects", parents=[common_args]
|
description="Get and build dependencies and projects", parents=[common_args]
|
||||||
|
@@ -683,15 +683,18 @@ def download_url_to_file_with_progress(url: str, file_name) -> None:
|
|||||||
start = time.time()
|
start = time.time()
|
||||||
try:
|
try:
|
||||||
if os.environ.get("GETDEPS_USE_WGET") is not None:
|
if os.environ.get("GETDEPS_USE_WGET") is not None:
|
||||||
subprocess.run(
|
procargs = (
|
||||||
[
|
[
|
||||||
"wget",
|
"wget",
|
||||||
|
]
|
||||||
|
+ os.environ.get("GETDEPS_WGET_ARGS", "").split()
|
||||||
|
+ [
|
||||||
"-O",
|
"-O",
|
||||||
file_name,
|
file_name,
|
||||||
url,
|
url,
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
|
subprocess.run(procargs, capture_output=True)
|
||||||
headers = None
|
headers = None
|
||||||
|
|
||||||
elif os.environ.get("GETDEPS_USE_LIBCURL") is not None:
|
elif os.environ.get("GETDEPS_USE_LIBCURL") is not None:
|
||||||
|
Reference in New Issue
Block a user