Skip to content

Commit d6483cb

Browse files
authored
feat: add and remove users to/from groups (#260)
1 parent 21d985a commit d6483cb

2 files changed

Lines changed: 9 additions & 4 deletions

File tree

alertaclient/commands/cmd_group.py

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,18 @@
88
@click.option('--id', '-i', metavar='UUID', help='Group ID')
99
@click.option('--name', help='Group name')
1010
@click.option('--text', help='Description of user group')
11-
@click.option('--users', '-U', is_flag=True, metavar='ID', help='Get list of group users')
11+
@click.option('--user', '-U', help='Add user to group')
12+
@click.option('--users', is_flag=True, metavar='ID', help='Get list of group users')
1213
@click.option('--delete', '-D', metavar='ID', help='Delete user group using ID')
1314
@click.pass_obj
14-
def cli(obj, id, name, text, users, delete):
15+
def cli(obj, id, name, text, user, users, delete):
1516
"""Create or delete a user group."""
1617
client = obj['client']
17-
if users:
18+
if id and user:
19+
client.add_user_to_group(id, user)
20+
elif id and delete:
21+
client.remove_user_from_group(id, delete)
22+
elif users:
1823
group_users = client.get_group_users(id)
1924
timezone = obj['timezone']
2025
headers = {'id': 'ID', 'name': 'USER', 'email': 'EMAIL', 'roles': 'ROLES', 'status': 'STATUS',

alertaclient/commands/cmd_user.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ def parse_args(self, ctx, args):
2828
@click.option('--role', 'roles', multiple=True, help='List of roles')
2929
@click.option('--text', help='Description of user')
3030
@click.option('--email-verified/--email-not-verified', default=None, help='Email address verified flag')
31-
@click.option('--groups', '-G', is_flag=True, help='Get list of user groups')
31+
@click.option('--groups', is_flag=True, help='Get list of user groups')
3232
@click.option('--delete', '-D', metavar='ID', help='Delete user using ID')
3333
@click.pass_obj
3434
def cli(obj, id, name, email, password, status, roles, text, email_verified, groups, delete):

0 commit comments

Comments
 (0)