Skip to content

Commit

Permalink
role_name
Browse files Browse the repository at this point in the history
  • Loading branch information
jiasli committed Dec 27, 2024
1 parent ff7d0fd commit a43f7f9
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 5 deletions.
5 changes: 4 additions & 1 deletion src/azure-cli/azure/cli/command_modules/role/_params.py
Original file line number Diff line number Diff line change
Expand Up @@ -361,4 +361,7 @@ class PrincipalType(str, Enum):
c.argument('role_definition_id', options_list=['--name', '-n'], help='the role definition name')
c.argument('custom_role_only', arg_type=get_three_state_flag(), help='custom roles only(vs. build-in ones)')
c.argument('role_definition', help="json formatted content which defines the new role.")
c.argument('name', arg_type=name_arg_type, completer=get_role_definition_name_completion_list, help="the role's name")
c.argument('name', arg_type=name_arg_type, completer=get_role_definition_name_completion_list,
help="Matches the role definition's name or roleName property.")
c.argument('role_name',
help="Matches the role definition's roleName property.")
9 changes: 5 additions & 4 deletions src/azure-cli/azure/cli/command_modules/role/custom.py
Original file line number Diff line number Diff line change
Expand Up @@ -61,12 +61,13 @@
# pylint: disable=too-many-lines, protected-access


def list_role_definitions(cmd, name=None, resource_group_name=None, scope=None,
def list_role_definitions(cmd, name=None, role_name=None, resource_group_name=None, scope=None,
custom_role_only=False):
definitions_client = _auth_client_factory(cmd.cli_ctx, scope).role_definitions
scope = _build_role_scope(resource_group_name, scope,
definitions_client._config.subscription_id)
return _search_role_definitions(cmd.cli_ctx, definitions_client, name, [scope], custom_role_only)
return _search_role_definitions(cmd.cli_ctx, definitions_client, name, [scope], custom_role_only=custom_role_only,
role_name=role_name)


def create_role_definition(cmd, role_definition):
Expand Down Expand Up @@ -137,9 +138,9 @@ def delete_role_definition(cmd, name, resource_group_name=None, scope=None,
definitions_client.delete(role_definition_id=r.name, scope=scope)


def _search_role_definitions(cli_ctx, definitions_client, name, scopes, custom_role_only=False):
def _search_role_definitions(cli_ctx, definitions_client, name, scopes, custom_role_only=False, role_name=None):
for scope in scopes:
roles = list(definitions_client.list(scope))
roles = list(definitions_client.list(scope, filter=f"roleName eq '{role_name}'"))
worker = MultiAPIAdaptor(cli_ctx)
if name:
roles = [r for r in roles if r.name == name or worker.get_role_property(r, 'role_name') == name]
Expand Down

0 comments on commit a43f7f9

Please sign in to comment.