From e0618d8ffdd2a32191e1c5a438f97a9d41b8f4c6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Lorenz=20H=C3=BCdepohl?= <dev@stellardeath.org>
Date: Wed, 10 Jun 2020 09:05:12 +0200
Subject: [PATCH] Support home: sub-projects for mpcdf_push

---
 mpcdf_branch.py | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/mpcdf_branch.py b/mpcdf_branch.py
index a1980b3..92b5a4a 100644
--- a/mpcdf_branch.py
+++ b/mpcdf_branch.py
@@ -16,19 +16,24 @@ def do_mpcdf_branch(self, subcmd, opts, *args):
     all required meta-data for the enabled repositories.
 
     Usage:
-        osc mpcdf_branch PACKAGE
+        osc mpcdf_branch PACKAGE [home:$USER]
 
     ${cmd_option_list}
     """
 
     apiurl = self.get_api_url()
-    target_project = "home:" + osc.conf.get_apiurl_usr(apiurl)
 
     if len(args) == 0:
         raise osc.oscerr.WrongArgs("Missing argument: PACKAGENAME")
-    if len(args) > 1:
+    elif len(args) == 1:
+        package, = args
+        target_project = "home:" + osc.conf.get_apiurl_usr(apiurl)
+    elif len(args) == 2:
+        package, target_project = args
+        if not target_project.startswith("home:"):  # + osc.conf.get_apiurl_usr(apiurl)):
+            raise osc.oscerr.WrongArgs("Target must be a home project")
+    if len(args) > 2:
         raise osc.oscerr.WrongArgs("Too many arguments")
 
-    package, = args
     mpcdf_common.sync_projects(apiurl, package=package, from_project="software",
                                to_projects=(target_project,), add_to_maintainers=False)
-- 
GitLab