From 023cd127951dc06dc0fae5449083b5133bc4ff3a Mon Sep 17 00:00:00 2001 From: Adam Simpkins Date: Wed, 20 Nov 2019 15:59:33 -0800 Subject: [PATCH] getdeps: automatically detect if a build appears to be Facebook-internal Summary: Automatically detect the `--facebook-internal` flag based on the current repository project name. Reviewed By: wez Differential Revision: D18621358 fbshipit-source-id: f2b3018169b151811eec455863a8bfc17667d4d8 --- build/fbcode_builder/getdeps.py | 8 +++++++- build/fbcode_builder/getdeps/buildopts.py | 8 +++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/build/fbcode_builder/getdeps.py b/build/fbcode_builder/getdeps.py index 8e2d1184b..92c14087f 100755 --- a/build/fbcode_builder/getdeps.py +++ b/build/fbcode_builder/getdeps.py @@ -729,7 +729,13 @@ def parse_args(): "--facebook-internal", help="Setup the build context as an FB internal build", action="store_true", - default=False, + default=None, + ) + add_common_arg( + "--no-facebook-internal", + help="Perform a non-FB internal build, even when in an fbsource repository", + action="store_false", + dest="facebook_internal", ) ap = argparse.ArgumentParser( diff --git a/build/fbcode_builder/getdeps/buildopts.py b/build/fbcode_builder/getdeps/buildopts.py index b79beb272..8e376fd9c 100644 --- a/build/fbcode_builder/getdeps/buildopts.py +++ b/build/fbcode_builder/getdeps/buildopts.py @@ -154,7 +154,7 @@ class BuildOptions(object): def is_linux(self): return self.host_type.is_linux() - def get_context_generator(self, host_tuple=None, facebook_internal=False): + def get_context_generator(self, host_tuple=None, facebook_internal=None): """ Create a manifest ContextGenerator for the specified target platform. """ if host_tuple is None: host_type = self.host_type @@ -163,6 +163,12 @@ class BuildOptions(object): else: host_type = HostType.from_tuple_string(host_tuple) + # facebook_internal is an Optional[bool] + # If it is None, default to assuming this is a Facebook-internal build if + # we are running in an fbsource repository. + if facebook_internal is None: + facebook_internal = self.fbsource_dir is not None + return ContextGenerator( { "os": host_type.ostype,