summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--cli/cli.py4
-rw-r--r--cli/objects/repo.py25
2 files changed, 28 insertions, 1 deletions
diff --git a/cli/cli.py b/cli/cli.py
index de344e5..cfe99f6 100644
--- a/cli/cli.py
+++ b/cli/cli.py
@@ -209,7 +209,7 @@ class OgCLI():
OgServer.delete_server(self.rest, args[1:])
def add(self, args):
- choices = ['server']
+ choices = ['server', 'repo']
parser = argparse.ArgumentParser(prog='ogcli add')
parser.add_argument('add_obj', choices=choices)
@@ -221,3 +221,5 @@ class OgCLI():
parsed_args = parser.parse_args([args[0]])
if parsed_args.add_obj == 'server':
OgServer.add_server(self.rest, args[1:])
+ elif parsed_args.add_obj == 'repo':
+ OgRepo.add_repo(self.rest, args[1:])
diff --git a/cli/objects/repo.py b/cli/objects/repo.py
index c4c4164..9728f33 100644
--- a/cli/objects/repo.py
+++ b/cli/objects/repo.py
@@ -17,6 +17,31 @@ class OgRepo():
print_json(r.text)
@staticmethod
+ def add_repo(rest, args):
+ parser = argparse.ArgumentParser(prog='ogcli add repo')
+ parser.add_argument('--address',
+ nargs='?',
+ required=True,
+ help='valid ip address')
+ parser.add_argument('--name',
+ nargs='?',
+ required=True,
+ help='valid ip address')
+ parser.add_argument('--center',
+ nargs='?',
+ type=int,
+ help='(Optional, Legacy) Center id serving this repository')
+ parsed_args = parser.parse_args(args)
+ payload = {
+ 'ip': parsed_args.address,
+ 'name': parsed_args.name,
+ }
+ if parsed_args.center:
+ payload['center']: center
+
+ rest.post('/repository/add', payload=payload)
+
+ @staticmethod
def set_repo(rest, args):
parser = argparse.ArgumentParser(prog='ogcli set repo')
parser.add_argument('--id',