From 206ebecb67c18cac157007941a63cb31a767f30b Mon Sep 17 00:00:00 2001 From: Klaus Aehlig Date: Mon, 22 May 2023 16:38:12 +0200 Subject: just-import-git: support assuming the canonical single-repo config Add an option --plain pretending that the remote repository configuration is the canonical single-repository one. In this way, repositories not having a multi-repository configuration (e.g., code built with a foreign build system) can be imported in the same way to a template, thus providing a more uniform interface. This can also be useful, if a repository is to be imported completely without its transitive dependencis. --- bin/just-import-git.py | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) (limited to 'bin/just-import-git.py') diff --git a/bin/just-import-git.py b/bin/just-import-git.py index 397c7a80..36b3d32b 100755 --- a/bin/just-import-git.py +++ b/bin/just-import-git.py @@ -230,8 +230,14 @@ def handle_import(args): foreign_config_file = args.foreign_repository_config else: foreign_config_file = get_repository_config_file(srcdir) - with open(foreign_config_file) as f: - foreign_config = json.load(f) + if args.plain: + foreign_config = { "main": "", + "repositories": {"": {"repository": + {"type": "file", + "path": "." }}}} + else: + with open(foreign_config_file) as f: + foreign_config = json.load(f) foreign_repos = foreign_config.get("repositories", {}) if args.foreign_repository_name: foreign_name = args.foreign_repository_name @@ -293,6 +299,13 @@ def main(): help="Repository-description file in the repository to import", metavar="relative-path" ) + parser.add_argument( + "--plain", + action="store_true", + help= + "Pretend the remote repository description is the canonical" + + " single-repository one", + ) parser.add_argument( "--as", dest="import_as", -- cgit v1.2.3