cli: add center.py

command to add center, specifying name and optionally a description
ogcli add center --name <name> [--comment <name>]

For example, to add a center with name "foocenter" and comment "foocenter description" type

$ ogcli add center --name foocenter --comment "foocenter description"
master
Javier Hernandez 2023-10-17 13:29:25 +02:00 committed by Jose M. Guisado
parent e7c2ad0ee1
commit 8be21d4ac5
2 changed files with 24 additions and 1 deletions

View File

@ -15,6 +15,7 @@ from cli.objects.poweroff import OgPoweroff
from cli.objects.reboot import OgReboot
from cli.objects.repo import OgRepo
from cli.objects.server import OgServer
from cli.objects.center import OgCenter
import argparse
import requests
import sys
@ -209,7 +210,7 @@ class OgCLI():
OgServer.delete_server(self.rest, args[1:])
def add(self, args):
choices = ['server', 'repo']
choices = ['server', 'repo', 'center']
parser = argparse.ArgumentParser(prog='ogcli add')
parser.add_argument('add_obj', choices=choices)
@ -223,3 +224,5 @@ class OgCLI():
OgServer.add_server(self.rest, args[1:])
elif parsed_args.add_obj == 'repo':
OgRepo.add_repo(self.rest, args[1:])
elif parsed_args.add_obj == 'center':
OgCenter.add_center(self.rest, args[1:])

View File

@ -0,0 +1,20 @@
import argparse
class OgCenter():
@staticmethod
def add_center(rest, args):
parser = argparse.ArgumentParser(prog='ogcli add center')
parser.add_argument('--name',
nargs='?',
required=True,
help='Name of the center')
parser.add_argument('--comment',
nargs='?',
required=False,
help='(Optional) Provide a more detailed description of the center')
parsed_args = parser.parse_args(args)
payload = {'name': parsed_args.name}
if parsed_args.comment:
payload['comment'] = parsed_args.comment
rest.post('/center/add', payload=payload)