cli: add live set --default command

Add command to set a new default live.

Command example:
ogcli set live --default --name ogLive-5.4.0-r20220408
master
Alejandro Sirgo Rica 2024-12-05 13:25:46 +01:00
parent 85d910d020
commit 0225502832
2 changed files with 25 additions and 1 deletions

View File

@ -117,7 +117,7 @@ class OgCLI():
return ret
def set(self, args):
choices = ['modes', 'mode', 'repo']
choices = ['modes', 'mode', 'repo', 'live']
parser = argparse.ArgumentParser(prog='ogcli set')
parser.add_argument('item', choices=choices)
@ -132,6 +132,8 @@ class OgCLI():
ret = OgModes.set_modes(self.rest, args[1:])
elif parsed_args.item == 'repo':
ret = OgRepo.set_repo(self.rest, args[1:])
elif parsed_args.item == 'live':
ret = OgLive.set_live(self.rest, args[1:])
return ret
def request(self, args):

View File

@ -286,3 +286,25 @@ class OgLive():
print(f'Error: no directory found for {live_name}')
return 0
@staticmethod
def set_live(rest, args):
parser = argparse.ArgumentParser(prog='ogcli set live')
parser.add_argument('--default',
action='store_true',
required=True,
help='set the default live image')
parser.add_argument('--name',
nargs='?',
required=True,
help='Name of the live')
parsed_args = parser.parse_args(args)
live_name = parsed_args.name
payload = {'name': live_name}
res = rest.post('/oglive/default', payload=payload)
if not res:
return 1
return 0