Skip to content

Commit e2ab3b3

Browse files
committed
add --all-repositories flag
Sometimes when working with Docker to debug a Linux issue, we want to copy the sources directory into the Docker image. If we have a checkout that was done on macOS, then repos needed to build those same sources on Linux, such as `icu` will not be included. There was no way to ask `update-checkout` to download those repos while on macOS. With `--all-repositories`, you can now ask for those repos, despite them not being needed on macOS. You can even do `--all-repositories --skip-repository icu` to include all platform specific repositories, but skip `icu`.
1 parent 5f6b126 commit e2ab3b3

File tree

1 file changed

+11
-2
lines changed

1 file changed

+11
-2
lines changed

utils/update_checkout/update_checkout/update_checkout.py

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -456,7 +456,10 @@ def full_target_name(repository, target):
456456
raise RuntimeError('Cannot determine if %s is a branch or a tag' % target)
457457

458458

459-
def skip_list_for_platform(config):
459+
def skip_list_for_platform(config, all_repos):
460+
if all_repos:
461+
return [] # Do not skip any platform-specific repositories
462+
460463
# If there is a platforms key only include the repo if the
461464
# plaform is in the list
462465
skip_list = []
@@ -504,6 +507,11 @@ def main():
504507
help="Skip the specified repository",
505508
dest='skip_repository_list',
506509
action="append")
510+
parser.add_argument(
511+
"--all-repositories",
512+
help="""Includes repositories not required for current platform.
513+
This will not override '--skip-repositories'""",
514+
action='store_true')
507515
parser.add_argument(
508516
"--scheme",
509517
help='Use branches from the specified branch-scheme. A "branch-scheme"'
@@ -578,6 +586,7 @@ def main():
578586
skip_tags = args.skip_tags
579587
scheme = args.scheme
580588
github_comment = args.github_comment
589+
all_repos = args.all_repositories
581590

582591
with open(args.config) as f:
583592
config = json.load(f)
@@ -606,7 +615,7 @@ def main():
606615
if scheme is None:
607616
scheme = config['default-branch-scheme']
608617

609-
skip_repo_list = skip_list_for_platform(config)
618+
skip_repo_list = skip_list_for_platform(config, all_repos)
610619
skip_repo_list.extend(args.skip_repository_list)
611620
clone_results = obtain_all_additional_swift_sources(args, config,
612621
clone_with_ssh,

0 commit comments

Comments
 (0)